2024年6月14日发(作者:)
库中的$()是什么?
$()函数是jQuery()函数的别称,乍一看这很怪异,还使jQuery代码晦涩难
懂。一旦你适应了,你会爱上它的简洁。$()函数用于将任何对象包裹成jQuery
对象,接着你就被允许调用定义在jQuery对象上的多个不同方法。你甚至可以
将一个选择器字符串传入$()函数,它会返回一个包含所有匹配的DOM元素数
组的jQuery对象。这个问题我已经见过好几次被提及,
对象。
这个问题我已经见过好几次被提及,尽管它非常基础,
这个问题我已经见过好几次被提及,
尽管它非常基础,它经
尽管它非常基础,
它经
常被用来区分一个开发人员是否了解jQuery。
2.网页上有5个
另一个重要的jQuery问题是基于选择器的。jQuery支持不同类型的选择器,
例如ID选择器、class选择器、标签选择器。鉴于这个问题没提到ID和
class,你可以用标签选择器来选择所有的
class,
你可以用标签选择器来选择所有的div元素。jQuery
元素。
jQuery代码:$("div"),
这样会返回一个包含所有5个div标签的jQuery对象。更详细的解答参见上
面链接的文章。
里的ID选择器和class选择器有何不同?
如果你用过CSS,你也许就知道ID选择器和class选择器之间的差异,jQuery
也同样如此。ID
也同样如此。
ID选择器使用ID来选择元素,比如
来选择元素,
比如#element1,而
#element1,
而class选择
器使用CSSclass来选择元素。当你只需要选择一个元素时,使用ID选择器,
而如果你想要选择一组具有相同CSSclass的元素,就要用class选择器。在
面试过程中,你有很大几率会被要求使用ID选择器和class选择器来写代码。
下面的jQuery代码使用了ID选择器和class选择器:
正如你所见,从语法角度来说,ID选择器和class选择器的另一个不同之处是,
前者用字符”#”而后者用字符”.”。
4.如何在点击一个按钮时使用jQuery隐藏一个图
片?
这是一个事件处理问题。jQuery为按钮点击之类的事件提供了很好的支持。你
可以通过以下代码去隐藏一个通过ID或class定位到的图片。你需要知道如何
为按钮设置事件并执行hide()方法,代码如下所示:
5.$(document).ready()是个什么函数?为什么
要用它?
ready()函数用于在文档进入ready状态时执行代码。当DOM完全加载(例如
HTML被完全解析DOM树构建完成时),jQuery允许你执行代码。使用
$(document).ready()的最大好处在于它适用于所有浏览器,jQuery帮你解决
了跨浏览器的难题。需要进一步了解的用户可以点击answer链接查看详细讨
论。
事件和jQueryready函数有何不同?
这个问答是紧接着上一个的。
事件和
jQueryready
函
数之间的主要区别是,前者除了要等待
DOM
被创建还要等到包括大型图片、
音频、视频在内的所有外部资源都完全加载。如果加载图片和媒体内容花费了大
量时间,用户就会感受到定义在
事件上的代码在执行时有明显
的延迟。
另一方面,
jQueryready()
函数只需对
DOM
树的等待,而无需对图像或外部资
源加载的等待,从而执行起来更快。使用
jQuery$(document).ready()
的另一个
优势是你可以在网页里多次使用它,浏览器会按它们在
HTML
页面里出现的顺
序执行它们,相反对于
onload
技术而言,只能在单一函数里使用。鉴于这个好
处,用
jQueryready()
函数比用
事件要更好些。
7.如何找到所有HTMLselect标签的选中项?
这是面试里比较棘手的
jQuery
问题之一。这是个基础的问题,但是别期望每个
jQuery
初学者都知道它。你能用下面的
jQuery
选择器获取所有具备
multiple=true
的
标签的选中项:
这段代码结合使用了属性选择器和
:selected
选择器,结果只返回被选中的选项。
你可按需修改它,比如用
id
属性而不是
name
属性来获取
标签。
里的each()是什么函数?你是如何使用它的?
each()函数就像是Java里的一个Iterator,它允许你遍历一个元素集合。你
可以传一个函数给each()方法,被调用的jQuery对象会在其每个元素上执行
传入的函数。有时这个问题会紧接着上面一个问题,举个例子,如何在alert框
里显示所有选中项。我们可以用上面的选择器代码找出所有选中项,然后我们在
alert框中用each()方法来一个个打印它们,代码如下:
其中text()方法返回选项的文本。
9.你是如何将一个HTML元素添加到DOM树中的?
你可以用jQuery方法appendTo()将一个HTML元素添加到DOM树中。这是
jQuery提供的众多操控DOM的方法中的一个。你可以通过appendTo()方法在
指定的DOM元素末尾添加一个现存的元素或者一个新的HTML元素。
10.你能用jQuery代码选择所有在段落内部的超链接吗?
这是另一个关于选择器的jQuery面试题。就像其他问题那样,只需一行jQuery
代码就能搞定。你可以使用下面这个jQuery代码片段来选择所有嵌套在段落
(
标签)内部的超链接(标签)
11.$(this)和this关键字在jQuery中有何不同?
这对于很多jQuery初学者来说是一个棘手的问题,其实是个简单的问题。
$(this)返回一个jQuery对象,你可以对它调用多个jQuery方法,比如用
text()获取文本,用val()获取值等等。而this代表当前元素,它是
JavaScript关键词中的一个,表示上下文中的当前DOM元素。你不能对它调用
jQuery方法,直到它被$()函数包裹,例如$(this)。
12.你如何使用jQuery来提取一个HTML标记的属性例如.链接的
href?
发布评论