/*
$("#message").html("Hello World, it is now:"
+new Date().toLocaleString());
相当于:
*/
var objTargetElements;//要施加操作的目标元素
//指定目标元素为 ID 等于 message 的元素,使用基于 ID 的选择器
objTargetElements=$("#message");
//调用 objTargetElements 的 html 方法,设置目标元素的 HTML 内容
objTargetElements.html ("Hello World, it is now:"
+new Date().toLocaleString());
$ 函数返回的对象还提供了一些方法,通过调用该对象的相关方法可以对选择器所匹配的元素进行相应的操作。比如,清单 3 所示代码中,我们通过调用$函数返回对象的 html 方法设置选择器表达式”#message”所匹配的元素的 HTML 内容。
为了更加直观得了解 $ 函数的返回值,建议您通过 Chrome 浏览器中的开发者工具的表达式监视功能( Watch Expressions),观察一个具体的$函数调用的返回值。如图 2 所示:
图 2.$ 函数返回值示意图jQuery 的语法和清单 3 中的 jQuery 语句的对应关系如图 3 所示:
图 3. jQuery 语法实例 $ 函数返回的对象提供了一个名为 each 的常用方法。 each 方法接受一个参数,该参数是一个回调函数。 each 方法会针对选择器表达式所匹配的元素中的每个元素逐次调用这个回调函数,并将单个元素及其对应的索引号作为参数传入该函数。下面看一个实例。
假设在页面中有多个链接,现在要将这个页面中所有链接的 URL 显示在浏览器的控制台中。
页面代码如下所示:
清单 6.$ 函数返回值实例
1
2
3
4
5
<a href="https://www.ibm.com/developerworks/cn/" target="_blank">
IBM developerWorks 中文站</a><br/>
<a href="https://www.ibm.com/developerworks" target="_blank">
IBM developerWorks</a><br/>
<a href="/" target="_blank">首页</a><br/>
此时,可以用基于元素名称的选择器来匹配多个元素(页面中所有的链接元素),并调用$函数返回值的 each 方法。这里,我们定义一个回调函数( 这个回调函数通常是一个匿名函数,方便代码编写),把它作为 each 函数的参数。在这个回调函数中,我们往浏览器控制台中打印每个链接的 URL,如清单 7 代码所示:
清单 7.jQuery 的 each 方法---遍历集合型对象的简便方法
1
2
3
4
//用基于元素名称的选择器去匹配页面中的所有链接元素
$("a").each(function(index,ele){//匿名函数作为 each 方法的参数,供其调用
console.log("链接"+index+":"+ele.href);//往控制台中打印链接 URL
});
现在,您不妨做一个练习,来改变 ID 为 tip 的元素使其能够以粗体显示。我们知道,要让一个元素粗体显示,只要指定其 CSS 属性 font-weight 为 bold 即可。也就是说,实现这样一个功能,我们需要的选择器是“#tip”,对应的操作是修改 CSS 属性。因此,jQuery 的代码是: