我有以下javascript:
$('#ge-display').click(function (event) {
window.open('/googleearth/ge-display.php','','scrollbars=yes,menubar=no,height=650,width=1000,resizable=yes,toolbar=yes,location=no,status=no');
event.stopPropagation();
return false;
});
id为'ge-display'的元素是标准链接:
<a href="/googleearth/ge-display.php" id="ge-display" target="_blank">Load Google Earth Plugin (in a new window)</a>
问题是 - 当我拿出'return false;'时来自click事件处理程序的行,打开javascript弹出窗口,然后打开另一个浏览器窗口 - 我认为stopPropagation()会阻止链接自己的点击处理程序?
我也尝试过stopImmediatePropagation() - 但我仍然需要返回false来停止链接的默认行为。
答案 0 :(得分:16)
调用event.stopPropagation()
将阻止其他Javascript事件处理程序处理该事件。它不会阻止浏览器的默认操作。
您需要致电event.preventDefault()
。