1隐式迭代(一般不需要for循环遍历dom对象) 2css88.com 3jQuery1.x支持低版本和非标准浏览器 a) 谷歌CDN: http://www.google-jquery-cdn.com/ b) 百度CDN:http://developer.baidu.com/wiki/index.php?title=docs/cplat/libs c) 微软CDN:http://msdn.microsoft.com/zh-cn/library/ee517318.aspx d) 新浪CDN:http://sae.sina.com.cn/?m=devcenter&catId=147 注意:优先引入CDN上的jquery,如果失效再引入本地的jquery,引入必须在head标签里。 4jQuery对象转换为Dom对象的两种方法[index]或get(index) Dom对象转换为jQuery对象只需要用$()把Dom对象包装起来 length、toString等等是公用的 5val()、html()、click() 6jQuery库和其他库共存的两种办法(即释放$权限) jQuery.noConflict(); alert("这是prototype弹出的:"+$F('a')); alert("这是jQuery弹出的:"+jQuery('#a').val()); 率先引入jQuery库,还有后面的$换为jQuery <script src="jquery.js"></script> <script src="prototype.js"></script> 选择器 css中div>a选择div下的一级子元素,低版本浏览器不兼容,但jQuery(‘div>a’)却不会存在兼容性的问题! $(“body *”) div+p选择div的下一个兄弟相当于next()方法 div~p选择div的后面的所有兄弟节点 相当于nextAll()方法 基本过滤选择器 p:first 第一个p p :first p元素的所有子孙元素的第一个 :not()、:even、:odd、:eq()、:gt(2)大于2的下标、:lt(2)小于2的下标、:animated 内容过滤选择器 :contains()选取含有指定文本内容的元素 :has()选择含有指定标签(元素)的元素 :empty选择不包含子元素或文本的空元素 :parent选择含有子元素或文本的元素 可见性选择器 :hidden选取所有不可见元素 :visible选取所有可见元素 例如:$(‘div:hidden’)选取不可见的div 注意:opacity:0或visibility:hidden虽然不可见但都占据空间用所以:hidden是选择不到的 属性选择器 $(“div[title=js]”)选取有属性title且属性名为js的div元素(属性不一定是title,可以自定义的) $(“div[title]”)选取有属性为title的元素,而不论属性名如何 子元素过滤选择器 :first-child选择父元素第一个子元素 :last-child选择父元素最后一个子元素 :only-child选择父元素只包含一个子元素的子元素 例如$(“div p:only-child”) $(“div p:nth-child(2n)”)注意:索引从1开始 表单元素选择器 :input选择所有表单元素包括textarea、select等 :text、:password、:radio、:checkbox、:submit、:image、:reset、:button、:file、:hidden等 $(“input:disabled”)或$(“input[disabled=disabled]”)选择不能修改的表单元素 $(“select option[selected=selected]”)或$(“select option:selected”) $('p').eq(0).css('background','red'); $('p:eq(0)').css('background','green'); $('p').filter(":odd").css('background','red');//参数也可为类名 $('p').first().css('background','red'); $('p').click(function(){ if($(this).is('.box'))//如果类型为box则...... { $(this).css('background','red'); } }); $('p').not(':first').css('background','green');//除去第一个不加样式 $('p').slice(1,5).css('background','red');//第一个开始第五个结束,包一不包五 遍历查找 $(“#wrap”).children().not(“div”)选取id为wrap的子元素不包括div $(“#wrap”).children(‘p’)选取id为wrap的子元素仅包括p parent() parents()和parentsUntil()是一样的 offsetParent()返回父元素中第一个其position设为relative或absolute的元素,仅指可见元素 next()、nextAll()、prev()、prevAll() siblings()除本身之外的所有兄弟元素 注意:只要是返回一组元素的都可以加参数 .end()返回上一级匹配的节点 .addBack()与end一样,只不过位置不同 分别弹出每个input的值each() $(function(){ $('input').each(function(){ alert($(this).val()); }); }); \\[\\]特殊字符 $("#tab1 tr:even").css("background","red"); $("#tab1 tr:odd").css("background","green"); 合并 $("#tab1 tr").filter(":even").css("background","red").end(). filter(":odd").css("background","green"); 选择器的优化 1.优先使用id选择器 2.在class选择器前添加标签名 3.采用find(),而不使用上下文查找 4.强大的链式操作比缓存更快 5.从左值右的模型 Dom操作 创建(两种方式) var newElement='<div>我是用字符串创建的div标签</div>'; var newElement=$('<div>我是$符创建的div标签</div>'); $('body').append(newElement); 内部插入 后插入的两种方法append和appendTo var str=$("<strong>大家好,我是后来插入的</strong>"); //$("p").append(str); str.appendTo($("p")); 前插入的两种方法prepend和prependTo //$("p").prepend(str); str.prependTo($("p")); 外部插入 后插入的两种方法after和insertAfter //$("p").after(str); str.insertAfter($('p')); 前插入的两种方法before和insertBefore 包裹节点 wrap()讲所有匹配元素单独包裹 wrapAll()将所有匹配元素用一个元素包裹 WrapInner讲所有匹配的元素的子内容用其他标签包裹 删除节点 remove()、empty() 清除标签及内容,但仍占用位置 unwrap()仅删除父元素(不包括子元素本身及父元素的内容即不包括父元素的子元素) 复制节点 Clone克隆标签及及标签包含的事件注意:标签包含的事件要写在克隆事件的后面或写成clone(true) $("a").click(function(){ alert("hello boy!"); }); var newA=$("a").clone(true); $("body").append(newA); 替换标签 replaceWith与replaceAll $("a").replaceWith("<p>我是p标签</p>"); $("<p>我是p标签</p>").replaceAll($("a")); 操作dom属性 attr()获取或添加或修改属性值 prop removeAttr()删除属性值 removeProp 样式操作 addClass()