<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<script src="jQuery.js"></script>
<style>
p{
width: 100px;
height: 60px;
background-color: red;
}
</style>
</head>
<body>
<div>
<p>click me </p>
</div>
</body>
<script>
$(function(){
$("div").on("click",function(e){
console.log($(e.currentTarget));
console.log($(e.target));
})
})
</script>
</html>
效果
??? ?$(function(){
?? ??? ?$("div").on("click",function(e){
?? ??? ??? ?console.log($(e.currentTarget)); ?//div 事件的监听者
?? ??? ??? ?console.log($(e.target)); //p 事件的目标
?? ??? ??? ?console.log($(this));?
?? ??? ?})
?? ?})
绑定了当前正在调用jQuery事件处理器的元素,也就是说表示的是当前事件的委托者
?? ?<script>
?? ?$(function(){
?? ??? ?$("div").on("click","p",function(e){
?? ??? ??? ?console.log($(this).html());?
?? ??? ?})
?? ?})
?? ?</script>
用on实现一个事件委托的效果
??? ?<script>
?? ?$(function(){
?? ??? ?$("div").on("click","p",function(e){
?? ??? ??? ?console.log($(this).html());
?? ??? ??? ? console.log($(e.delegateTarget));? ?//指向当前事件的委托者,从代码中可以看到是div
?? ??? ?})
?? ?})
?? ?</script>
?给事件委托者添加样式
?? ?$(function(){
?? ??? ?$("div").on("click","p",function(e){
?? ??? ??? ?console.log($(this).html());
?? ??? ??? ? ($(e.delegateTarget)).css("border","1px solid red");
?? ??? ?})
?? ?})
?? ?</script>
?
X是鼠标相对于文档左边缘的位置
Y是鼠标相对于文档上边缘的位置
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<script src="jQuery.js"></script>
<style>
#log{
width: 300px;
height: 300px;
background-color: aquamarine;
}
</style>
</head>
<body>
<div id ="log">
<p>click me </p>
</div>
</body>
<script>
$(function(){
$("#log").on("mousemove",function(e){
console.log("pagex="+e.pageX+"pagey="+e.pageY)
})
})
</script>
</html>
效果
?? ?<script>
?? ?$(function(){
?? ??? ?$("#log").on("mousemove",function(e){
?? ??? ??? ?console.log("pagex="+e.pageX+"pagey="+e.pageY)
?? ??? ??? ?alert(e.type);
?? ??? ?})
?? ??? ?})
?? ?</script>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<script src="jQuery.js"></script>
</head>
<body>
<a href="http://www.baidu.com"></a>
</body>
<script>
$(function(){
$("a").click(function(e){
e.preventDefault();
alert("hahah");
})
})
</script>
</html>
?会发现点击后没有跳转到百度页面
? 注释后会发现点击后跳转到百度页面