元素,如何使用 jQuery 选择它们?
另一个重要的 jQuery 问题是基于选择器的。 jQuery 支持不同类型的选择器,如 ID 选择器、类选择器、标签选择器。 由于问题没有提到 ID 和类,您可以使用标签选择器来选择所有 div 元素。 jQuery 代码:$("div"),这将返回一个包含所有 5 个 div 标签的 jQuery 对象。 请参阅上面链接的文章以获得更详细的答案。
3、jQuery中ID选择器和类选择器有什么区别?
如果您使用过 CSS,您可能知道 ID 选择器和类选择器之间的区别,jQuery 也是如此。 ID选择器使用ID来选择元素,例如#element1,而类选择器使用CSS类来选择元素。 当你只需要选择一个元素时使用 ID 选择器,如果你想选择一组具有相同 CSS 类的元素,则使用类选择器。 在面试过程中,很可能会要求您使用 ID 选择器和类选择器编写代码。 以下 jQuery 代码使用 ID 和类选择器:
$('#LoginTextBox') // 返回包装为 jQuery 对象的元素
$('.active') // 返回所有具有 CSS 类活动的元素。
如您所见,ID 选择器和类选择器之间的另一个语法差异是前者使用字符“#”,而后者使用字符“.”。 有关更详细的分析和讨论,请参见上面的答案链接。
4. 如何在单击按钮时使用 jQuery 隐藏图像?
这是一个事件处理问题。 jQuery 对按钮点击等事件有很好的支持。 您可以使用以下代码隐藏按 ID 或类定位的图像。 你需要知道如何为按钮设置事件并实现hide()方法,代码如下:
$('#ButtonToClick').click(函数(){
$('#ImageToHide').隐藏();
});
喜欢这道题是因为贴近实际,代码也不复杂。
5. $(document).ready()是什么函数? 为什么要使用它?
这个问题很重要,而且经常被问到。 ready() 函数用于在文档进入就绪状态时执行代码。 当 DOM 完全加载时(即 HTML 被完全解析并且 DOM 树被构建),jQuery 允许您执行代码。 使用$(document).ready()最大的好处就是适用于所有浏览器,jQuery帮你解决了跨浏览器的问题。 需要了解更多的用户可以点击答案链接查看详细讨论。
6. JavaScript window.onload 事件与 jQuery ready 函数有何不同?
本问答沿用上一问答。 JavaScript window.onload 事件和 jQuery ready 函数的主要区别在于,前者除了等待 DOM 创建外,还等待所有外部资源(包括大图像、音频和视频)完全加载。 如果加载图像和媒体内容需要很长时间,则用户在执行 window.onload 事件上定义的代码时会遇到明显的延迟。
另一方面,jQuery ready() 函数只需要等待 DOM 树加载,而不需要加载图像或外部资源,因此执行速度更快。 使用 jQuery $(document).ready() 的另一个优点是您可以在网页中多次使用它,浏览器将按照它们在 HTML 页面中出现的顺序执行它们,这与 onload 技术相反,后者只能在单个函数中使用。 为此,最好使用 jQuery ready() 函数而不是 JavaScript window.onload 事件。
7、如何找到所有HTML select标签的选中项?
这是面试中比较棘手的 jQuery 问题之一。 这是一个基本问题,但不要指望每个 jQuery 初学者都知道。 您可以使用以下 jQuery 选择器为所有具有 multiple=true 的标签获取所选项目:
$('[name=NameOfSelectedTag] :selected')
此代码将属性选择器与 :selected 选择器组合在一起以仅返回选定的选项。 你可以根据需要修改它,比如使用id属性代替name属性来获取标签。
8. jQuery 中的 each() 函数是什么? 你如何使用它?
each() 函数类似于 Java 中的迭代器,它允许您迭代元素集合。 您可以将函数传递给 each() 方法,被调用的 jQuery 对象将在其每个元素上执行传递的函数。 有时这个问题会跟在上面这个问题之后,例如,如何在警告框中显示所有选中的项目。 我们可以使用上面的选择器代码找到所有选中的项,然后我们在alert框中使用each()方法将它们一一打印出来jquery获取class的值,代码如下:
$('[name=NameOfSelectedTag] :selected').each(函数(selected) {
alert($(selected).text());
});
其中 text() 方法返回选项的文本。
9. 如何将 HTML 元素添加到 DOM 树中?
您可以使用 jQuery 方法 appendTo() 将 HTML 元素添加到 DOM 树。 这是 jQuery 提供的多种操作 DOM 的方法之一。 您可以使用 appendTo() 方法将现有元素或新的 HTML 元素附加到指定 DOM 元素的末尾。
10. 你能用jQuery代码选择一个段落内的所有超链接吗?
这是另一个关于选择器的 jQuery 面试问题。 和其他问题一样,只需要一行jQuery代码就可以解决。 您可以使用以下 jQuery 片段来选择所有嵌套段落 (
标签)内的超链接(标签)…
11.jQuery中的$(this)和this关键字有什么区别?
对于许多 jQuery 初学者来说,这是一个棘手的问题,但它实际上是一个简单的问题。 $(this) 返回一个 jQuery 对象,您可以在该对象上调用多个 jQuery 方法,例如 text() 获取文本,val() 获取值等。 而this代表当前元素,它是JavaScript关键字之一,代表上下文中的当前DOM元素。 在将它包装在 $() 函数中之前,您不能对其调用 jQuery 方法,例如 $(this)。
12. 如何使用 jQuery 提取 HTML 标记的属性,例如。 链接的href?
attr() 方法用于提取任何 HTML 元素的属性值。 您首先需要使用 jQuery 来选择和选择所有链接或特定链接,然后您可以应用 attr() 方法来获取它们的 href 属性值。 以下代码将查找页面中的所有链接并返回 href 值:
$('a').each(函数(){
警报($(this).attr('href'));
});
13. 如何使用 jQuery 设置属性值?
前一个问题之后的另一个后续问题是 attr() 方法与 jQuery 中的其他方法具有更多相同的功能。 如果你用一个值调用 attr() ,比如。 attr(name, value)jquery获取class的值,这里的name是属性的名称,value是属性的新值。
14. jQuery 中的 detach() 和 remove() 方法有什么区别?
尽管 detach() 和 remove() 方法都用于删除 DOM 元素,但两者之间的主要区别在于 detach() 会跟踪过去分离的元素,因此可以取消分离,而 remove( ) 方法将保留对过去删除的对象的引用。 您还可以查看用于将元素添加到 DOM 的 appendTo() 方法。
15. 如何使用 jQuery 在元素中添加和删除 CSS 类?
通过使用两个 jQuery 方法 addClass() 和 removeClass()。 动态改变元素的类属性可以很简单,例如使用类“.active”来标记它们的非活动和活动状态等。
16. 使用 CDN 加载 jQuery 库的主要优点是什么?
这是一个稍微高级一点的 jQuery 问题。 那么,除了节省服务器带宽和更快的下载速度的诸多好处之外,最重要的是,如果浏览器已经从同一个CDN下载了同一个jQuery版本,那么它就不会再下载一次了。 所以今天,很多公共网站都使用 jQuery 来进行用户交互和动画,如果浏览器下载了 jQuery 库,网站就可以有很好的展示机会。
17. jQuery.get() 和 jQuery.ajax() 方法有什么区别?
ajax() 方法更强大且更可配置,允许您指定等待多长时间以及如何处理错误。 get() 方法是一种专门获取一些数据的方法。
18. jQuery 中的方法链是什么? 使用方法链有什么好处?
方法链是对一个方法返回的结果调用另一个方法,使得代码简洁明了,同时由于只对DOM进行一轮查找,性能更好。
19. 如果在 jQuery 事件处理程序中返回 false 怎么办?
这通常用于阻止事件冒泡。
20. document.getElementbyId(“myId”) 和 $(“#myId”) 哪个效率更高?
第一个,因为它直接调用 JavaScript 引擎。
原始来源:Javin Paul
翻译来源:oschina