jQuery函数接受一个包含CSS选择器的字符串,并使用该字符串来匹配一组元素。jQuery的核心功能都是通过这个函数实现的。jQuery中的一切都基于这个函数,或者以某种方式使用这个函数。这个函数最基本的用法就是给它传递一个表达式(通常由CSS选择器组成),然后根据这个表达式找到所有匹配的元素。默认情况下,如果没有指定上下文参数,$()将在当前HTML文档中搜索DOM元素;如果指定了上下文参数,例如DOM元素集或jQuery对象,将在该上下文中进行搜索。在jQuery1.3.2之后,返回元素的顺序等于它们在上下文中出现的顺序。有关表达式参数的CSS语法的更多信息,请参阅文档的选择器部分。查找所有必须是div元素子元素的p元素。$("分区>p");设置页面的背景颜色。$(document.body).css("背景","黑色");隐藏表单中的所有元素。$(myForm.elements).hide();在文档的第一种形式中查找所有单选按钮(即:类型值为radio的输入元素)。$("input:radio",document.forms[0]);在AJAX返回的XML文档中查找所有div元素。jQuery代码:$("div",xml.responseXML);根据提供的原始HTML标记字符串动态创建由jQuery对象包装的DOM元素。同时设置一系列的属性、事件等。你可以传递一个手写的HTML字符串,或者一些模板引擎或插件创建的字符串,或者通过AJAX加载的字符串。但是在创建输入元素时有限制,可以参考第二个例子。当然,该字符串可以包含斜杠(例如图像地址)以及反斜杠。创建单个元素时,请使用结束标记或XHTML格式。例如,要创建一个跨度,您可以使用$("")或$(""),但不建议使用$("")。在jQuery中,此语法等效于$(document.createElement("span"))。在jQuery1.8中,通过$(html,props),您可以使用任何jQuery对象的方法或插件。在此之前,您只能使用一个简短的方法名称列表,并且没有记录方法可以添加到列表中。现在它根本不需要是一个列表!但是,请注意,如果稍后添加与HTML属性同名的插件,这可能会导致您的代码行为发生变化。动态创建一个div元素(以及其中的所有内容)并将其附加到body元素。在这个函数内部,标记到DOM元素的转换是通过临时创建一个元素并将该元素的innerHTML属性设置为给定的标记字符串来实现的。因此,这个功能既有灵活性,也有局限性。$("").appendTo("body");要创建一个元素,必须同时设置type属性。因为微软规定元素的类型只能写一次。//在IE中无效:$("").attr("type","checkbox");//在IE中有效:$("");动态创建一个div元素(以及其中的所有内容),并将其附加到body元素。在这个函数内部,标记到DOM元素的转换是通过临时创建一个元素并将该元素的innerHTML属性设置为给定的标记字符串来实现的。因此,这个功能既有灵活性,也有局限性。//在IE中无效:$("",{"class":"test",text:"Clickme!",click:function(){$(this).toggleClass("test");}}).appendTo("正文");创建一个
元素,并设置类型属性、属性值和一些事件。$("
",{type:"text",val:"Test",focusin:function(){$(this).addClass("active");},focusout:function(){$(this.removeClass("active");}}).appendTo("form");$(document).ready()的简写。允许您绑定要在加载DOM文档后执行的函数。该函数的作用与$(document).ready()相同,只是在使用该函数时,需要将页面中所有需要在加载DOM时执行的$()运算符进行包装。从技术上讲,此功能是可链接的——但实际上以这种方式链接的情况并不多。您可以在页面上使用任意数量的$(document).ready事件。有关ready事件的更多信息,请参见ready(Function)。当DOM加载完成后,执行其中的函数。$(function(){//文档准备好});$(document).ready()的简写,而内部jQuery代码仍然使用$作为别名,而不管全局$.jQuery(function($){//你可以在这里继续使用$作为别名...});暂停或恢复执行.ready()事件。$.holdReady()方法允许调用者延迟jQuery的就绪事件。这种高级功能,通常使用动态脚本加载器,必须加载JavaScript,例如jQuery插件,例如额外的就绪事件以允许事件发生,即使DOM可能已准备就绪。此方法必须在文件的早期调用,在jQuery脚本之后的标记中。在ready事件之后调用此方法将无效,即使它已经发出。要延迟就绪事件,请在第一次调用$.holdReady(true)。在应执行就绪事件时调用$.holdReady(false)。注意,可以在ready事件上放置多个hold,每个$.holdReady(true)一个一个调用。准备事件将不会执行,直到所有相应的事件都已使用$.holdReady(false)发布并且满足正常的文件就绪条件。(有关更多信息,请参阅ready。))延迟ready事件,直到插件已加载。$.holdReady(真);$.getScript("myplugin.js",function(){$.holdReady(false);});遍历两个图像并设置它们的src属性。注意:这里的this指的是DOM对象,而不是jQuery对象。HTML代码:
![]()
![]()
jQuery代码:$("img").each(function(i){this.src="test"+i+".jpg";});result[
,
]如果想获取jQuery对象,可以使用$(this)函数。HTML代码:
停在这里 jQuery代码:$("img").each(function(){$(this).toggleClass("example");});你可以使用'return'来提前跳出each()循环。HTML代码:到此为止
jQuery代码:$("button").click(function(){$("div").each(function(index,domEle){//domEle==this$(domEle).css("backgroundColor","yellow");if($(this).is("#stop")){$("span").text("停止在div索引#"+index);return错误的;}});});