王新阳

wangxinyang

js阻止事件冒泡的两种方法

<div>
	<input type="button" value="submit">
</div>

方法一:event.stopPropagation( );

$("input").click(function(event){
    alert('click');
    event.stopPropagation(); //阻止冒泡
});

方法二:event.target

现在,事件处理程序中的变量event保存着事件对象。而event.target属性保存着发生事件的目标元素。这个属性是DOM API中规定的,但是没有被所有浏览器实现 。jQuery对这个事件对象进行了必要的扩展,从而在任何浏览器中都能够使用这个属性。通过.target,可以确定DOM中首先接收到事件的元素(即实际被单击的元素)

$("input").click(function(event){
    if(event.target != this)return; //阻止冒泡
    alert("click");
});

2018-05-27
2024-05-06 星期一 农历三月二十八