1、event 对象供我们在需要时调用,event对象只在事件发生过程中才有效,event代表事件的状态 ,比如事件在其中发生的元素、键盘按键的状态、鼠标的位置、鼠标按钮的状态 ;(w3c说明)
2、ff与ie/chrome里面的event对象不同,ie/chrome中是window.event ,ff中是event本身;ie/chrome事件对象 window.event.srcElement , ff中为event.target ;
3、如果事件句柄想阻止事件传播到包容对象,必须把cancelBubble属性设为 true。
以下代码为发生点击事件时某元素消失,点击事件对象时不消失;
第一种方法:事件监听
<script type="text/javascript">
$(document).bind('click', function(event) {
var _event = event || window.event;
var _element = _event.target || _event.srcElement;
while (_element) {
if (_element.id && _element.id == 'xxx') {
return;
}
_element = _element.parentNode;
}
$('xxx').css('display', 'none');
});
</script>
第二种方法:阻止冒泡
function stopPropagation(e) {
var _e = e || window.event;
if (_e.stopPropagation) {
_e.stopPropagation();
}
else if (window.event) {
window.event.cancelBubble = true;
}
}