取消浏览器对事件的默认行为(响应)(比如<a>标签的跳转等)并停止事件的继续传播。
实现代码
复制代码 代码如下:
function stopEvent (evt) {
var evt = evt || window.event;
if (evt.preventDefault) {
evt.preventDefault();
evt.stopPropagation();
} else {
evt.returnValue = false;
evt.cancelBubble = true;
}
}
只阻止事件继续传播(不取消默认行为)
复制代码 代码如下:
function stopEvent (evt) {
var evt = evt || window.event;
if (evt.stopPropagation) {
evt.stopPropagation();
} else {
evt.cancelBubble = true;
}
}
只取消默认行为(不阻止事件的继续传播)
复制代码 代码如下:
function stopEvent (evt) {
var evt = evt || window.event;
if (evt.preventDefault) {
evt.preventDefault();
} else {
evt.returnValue = false;
}
}
您可能感兴趣的文章:
- jquery取消事件冒泡的三种方法(推荐)
- js如何取消事件冒泡
- flex中event.preventDefault()方法取消事件的默认行为
- 关于捕获用户何时点击window.onbeforeunload的取消事件
- Javascript Event(事件)的传播与冒泡
- JavaScript实现事件的中断传播和行为阻止方法示例
- JavaScript中使用stopPropagation函数停止事件传播例子
- JS传播事件、取消事件默认行为、阻止事件传播详解