为了账号安全,请及时绑定邮箱和手机立即绑定
<div><p></p></div>
如果在p上用mouseover,div会触发冒泡事件
如果在p上用mouseenter,div不会触发冒泡事件
function(e){}
e是jq事件的事件对象,里面保存了事件的属性和方法
e.target表示这个触发这个事件的元素
e.data 表示第一个参数存储的值
我记得可以直接在css 里面写 ele:hover{xxxxx}
对于第一个按钮的点击事件:bottonName=undefined,所以bottonName||'first'=='first';
对于第二个按钮的点击事件:bottonName = 'last',所以bottonName||'first'=='last';
1、只要“||”前面为false,不管“||”后面是true还是false,都返回“||”后面的值。

2、只要“||”前面为true,不管“||”后面是true还是false,都返回“||”前面的值。
想知道里面的东西都指向谁,试试就知道了:
$("ul").on('click',function(e){
console.log(this);
console.log(e.target);
console.log('触发的元素是内容是: ' + e.target.textContent);
//事件是会冒泡的,在li点击时,产生event事件,event.target指向li,通过冒泡冒到外部的ul,然后ul绑定的事件捕获到li的冒泡,触发事件处理程序
})
e.target展示的是当前点击的对象不会被冒泡,而this是点击li时会被冒泡到当前绑定的对象上ul
可以用console.log(e.target);
console.log(this); 分别点击li 和 ul 试试
这里可以用来进行表单检测,判断内容是否符合要求。
比如:
$('#target2').submit(function() {
var text = $('#target2 input:first').val();
if(text == "" || text == "输入新的值")
{
$(":text:last").css("border","2px solid red");
alert("请重新输入");
return false;
}
});
这里的例子有点绕,总的来说就是从效果上来说,都是在获取或失去焦点时产生事件,并可以绑定处理函数。
区别就在于focus和blur只能在input之类的表格元素本身上起效,当在他的父级元素上绑focus和blur事件时,因为它俩不冒泡,所以在外部的绑定其实是没有效果的。
而focusin和focusout可以冒泡,所以就算是在父级绑定的这两个事件,只要是内部元素触发了获得和失去焦点的事件,一样可以冒泡出来,让父级元素绑定的事件捕获到,从而执行命令。
针对测试三的一点理解:
ele.click(argument1,function(e){
alert(e.dada);
})
这里传给click里的第一个参数其实就是jqurey做好的一种功能,如果你填了这个argument1参数,就会把这个参数传递赋值给当前对象的event.data属性,如果在之后的函数里调用event.data,就可以访问并使用这个属性。
很多jquery里的事件都可以这样传递参数,只要知道这是一种传参的写法就行了。
如果有理解不当的地方,请指正!
前面HTML、CSS、JS都很清晰,怎么一到jQuery就非常混乱呢?
http://libs.baidu.com/jquery/1.9.1/jquery.js
$("button:first").click(function() {
$("a").trigger("click","heeloasdgsadg");
$("input").trigger("focus","trigger");
//这里trigger传入的值并没有在focus中生效(因为input绑定的是jQuery的方法)但在click中生效了
//若要触发通过 jQuery 绑定的事件处理函数,而不触发原生的事件,使用.triggerHandler() 来代替
});
我觉得这里应该写上,直接看jQueryAPI文档:http://www.css88.com/jqapi-1.9/
很奇怪,我看官方文档是focus和blur只在IE中不支持冒泡,所以,jQ才实现了focusin和focusout用以统一跨浏览器表现,但是在测试的时候,focus在什么浏览器都不支持冒泡
课程须知
1、有HTML/CSS基础 2、有JavaScript基础
老师告诉你能学到什么?
1、jQuery的基础语法 2、jQuery事件处理

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消