如何使用javascript中的关键事件,使其不会';不传播?
如何使用javascript中的键事件,使其不会传播?尝试和/或。如果您不希望事件传播,并且没有使用jQuery(或包装本机浏览器事件的另一个库),则需要使用事件的如何使用javascript中的关键事件,使其不会';不传播?,javascript,Javascript,如何使用javascript中的键事件,使其不会传播?尝试和/或。如果您不希望事件传播,并且没有使用jQuery(或包装本机浏览器事件的另一个库),则需要使用事件的stopPropagation()大多数浏览器中的方法及其IE中的cancelBubble属性。不要为return false或preventDefault()操心:它们只影响本机浏览器是否对事件执行操作,而与传播无关 例如: document.onkeypress = function(evt) { evt = evt ||
stopPropagation()大多数浏览器中的
方法及其IE中的cancelBubble
属性。不要为return false
或preventDefault()
操心:它们只影响本机浏览器是否对事件执行操作,而与传播无关
例如:
document.onkeypress = function(evt) {
evt = evt || window.event;
if (typeof evt.stopPropagation != "undefined") {
evt.stopPropagation();
} else {
evt.cancelBubble = true;
}
};
假设问题是关于jQuery的,没有指定wich。@yoda:这些不是jQuery方法,jQ只是包装了本机方法。我同意链接到jQ文档有点不幸。stopPropagation在我的Xul应用程序中不起作用,但preventDefault起作用了,谢谢!)@汤姆:是的,他们做的事情细微不同。Firefox/xulrunner文档的最佳位置可能从这里开始:@Tom,@Douglas:
preventDefault()
与事件传播无关,stopPropagation()
与抑制本机浏览器操作无关。我想说,两者之间的区别并不微妙。我喜欢你的解释,但它不起作用preventDefault()
确实有效。@daCoda:在这种情况下,您想要的是阻止事件的默认行为,而不是停止传播。