1.加载JavaScript 在结束标题</body>之前加载,可以有效的防止脚本阻塞其他页面元素的加载。(如图片显示)
还可以防止在页面元素完全加载之前JavaScript代码就开始运行,避免页面发生异常或者产生脚本错误。
2.使用 jQuery.noConflict();方法让出$()别名。
3.组合选择器 $("p.foo,#bar"); 任意拥有class foo的段落和id="bar"的元素
4.$("p.foo")与 $("p .foo") 的区别,第一个是含有class="foo"的p标签(标签一定是p),第二个是查找p标签下 class=".foo"的标签(标签不一定是p)
5.$("p>span") 直接子元素 p标签下的span(只在p标签下,紧挨着)
6.选择下一个兄弟(next)元素
有时你需要在 DOM中选择一个元素周后紧跟的下一个兄弟元素,达成目标的选择格式为起始元素标识(可以是任意选择器)加一个加号(+)再加下一个兄弟元素标识;
$(".foo+p") 其实元素表示+下一个兄弟元素表示
找到class="foo" 的下一个兄弟p (找到每个.foo的下一个兄弟元素)
7.选择兄弟元素
$(".foo~p") 匹配p.foo之后的所有兄弟元素
基本过滤器
1. p:过滤器名字 2. p:过滤器名字(参数)
p:last , p:not(.foo) , p:odd(奇数) even(偶数) , p:eq(3) 索引为3的值(从0开始) p:eq(-3)倒数第3个元素
内容过滤器 :contains() 匹配包含特定文本的元素(括号里面不能加引号)区分大小写
$("p:contains(Another)") 找到p标签中还有Another单词 的这个p标签
:has() 匹配包含特定元素的元素。
$("p:has(span)") 找到p标签中含有span标签 的这个p标签
$(":empty") 不包含文本也不包含任何其他元素的空元素
$("p:parent") 只匹配那些拥有子元素的元素,不管它包含的是其他元素,还是文本内容,或者兼而有之。
$("p:visible")看到的元素 hidden 隐藏的元素
注意:尽量使用ID,CLASS选择器,优先使用速度快。
:nth-child 有四个元素 even.odd.index.equation 起始位是从1开始
:last-child 在每个段落找,不是整个DOM
表单::button, :checkbox, :file, :image, :input, :password, :radio, :submit, :text,
:enabled可用 :disabled 禁用 :checked 单选按钮和复选框 :selected 下拉菜单
JQUERY 使用
1.链式调用
$('p')
.addClass("new-class")
.text("I'm a paragraph!")
.appendTo('body');
.filter 必须要在一个对象包含的元素中 $('p').filter('.foo'); 找出所有段落,然后过滤出拥有.foo段落
.not 与 .filter 相反。不匹配的。
.is() 返回布尔值 ture false $("p").is('.foo') 判断是否存在.foo
.slice() 要基于索引选择一个元素集合的子集。就要用slice 第二个参数不写到结尾,负数倒数
$("p").slice(1,3) 截取p元素集合中的 第二个-第三个
.children 和 find 都是查找 children是近查询(直系)下一级元素 find 查询下级所有
.closest() $("span.foo").closest("p"); 找出包含span.foo 的p元素