$是jQuery的核心函数
jQuery对象时DOM对象数组 + jQuery提供的一系列功能函数
jQuery与DOM对象无法互相使用对方的属性和方法
#id 选择器
(
"
i
d
"
)
.
c
l
a
s
s
选
择
器
("id") .class 选择器
("id").class选择器(.class)
element 选择器KaTeX parse error: Undefined control sequence: \* at position 11: (element) \̲*̲ 选择器:选择所有元素(*)
selector1, selector2 组合选择器$(“selector1”,“seletor2”):将selector1, 2的查询结果组合到一起,查询结果与查询顺序无关,与页面标签顺序有关
ancestor descendant 后代选择器:在给定祖先元素下匹配所有后代元素
找表单中的input元素$("form input");
parent > child 子元素选择器
找表单中所有子级input$("form > input");
prev + next 相邻元素选择器
找跟在label后的input$("label + input");
prev ~ siblings 之后的兄弟元素选择器
找所有跟表单同辈的input元素$("form ~ input");
[标签]:first 取匹配到的第一个元素,li标签中的第一个元素$("li:first");
:last
:not(selector) 去除所有匹配元素
:even 匹配索引值为偶数的元素,从零开始
:odd 奇数
:eq(index) 匹配一个给定索引值的元素
:gt(index) 所有大于索引值的元素
:lt(index) 小于
:header 匹配h1,h2等标题元素
:animated 匹配所有正在执行的动画效果元素
[标签]:contains(text) 匹配包含文本的元素
:empty 匹配所有不包含子元素或文本的空元素
:parent 匹配含有子元素或文本的元素
:has(selector) 匹配含有选择器所匹配的元素的元素
<div><p>Hello</p></div>
<div>Hello again!<div>
$("div:has(p)").addClass("test");
结果:<div class="test"><p>Hello</p></div>
[标签][attribute] 匹配包含给定属性的元素
[attribute=‘value’] 匹配给定的属性是某个特定值的元素
[attribute!=‘value’] 匹配不含有指定属性,或属性不等于特定值的元素
[attribute^=‘value’] 匹配给定的属性以某些值开始的元素
[attributeKaTeX parse error: Undefined control sequence: \* at position 24: …] 结尾 [attribute\̲*̲='value'] 包含 \[…(“input[id][name=‘gender’]”);`
:input 匹配所有input,textarea,select和button元素
:text 匹配所有文本输入框
:password 匹配所有密码输入框
:radio 单选框
:checkbox 复选框
:submit
:image
:reset
:button
:file
:hidden
有参数时设置,无参数时获取
html() 跟DOM属性innerHTML一样
text() 跟DOM属性innerTEXT一样
val() 跟DOM属性value一样
设置和获取属性值(一个参数时获取,两个参数时设置)
可以操作非标准属性
CSS样式操作
addClass()
removeClass()
toggleClass()
offset()
show()
hide()
toggle()
fadeIn()
fadeOut()
fadeTo()
fadeToggle()
$(function(){});和window.οnlοad=functoon(){}的区别
触发时间:
两事件触发顺序:
触发次数:
click() 绑定\触发单击事件,传入参数为function时绑定事件,不传时触发事件
mouseover() 鼠标移入
mouseout() 鼠标移出
bind() 给元素一次性绑定一个或多个事件
one() 和bind一样,但one方法绑定的事件只会响应一次
unbind() 解除事件的绑定
live() 绑定事件,可以用来绑定选择器所匹配的元素的事件,即使这个元素是后面动态创建出来的也有效
事件冒泡指,父子元素同时监听同一个事件。当触发子元素事件的时候,同一个事件也传递到父元素的事件里去响应
在事件函数体内,return false;可以阻止事件的冒泡传递
事件对象,是封装有触发事件信息的一个JavaScript对象。
我们重点关心的是怎么拿到这个JavaScript对象,以及使用
如何获取事件对象:
在给初始元素绑定事件时,在事件function()参数列表中加入一个参数,这个参数名习惯上取为event,这个event就是JavaScript传递事件处理函数的事件对象
//原生js
window.onload = function(){
document.getElementById("areaDiv").onclick = function(event){
console.log(event);
}
}
//jQuery
$(function(){
$("aredDiv").click(function(event){
console.log(event);
});
});
<body>
<div id="aredDiv"></div>
</body>