//prevent default handler
function click_handler(event){
if(event.shiftKey){
event.preventDefault();
}
}
//event listener
var file_mgmt=document.querySelector('div.filemanager');
if(window.addEventListener){
file_mgmt.addEventListener('click',click_handler,false);
}else if(window.attachEvent){
file_mgmt.attachEvent('onclick',click_handler);
}else{
file_mgmt.onclick=click_handler;
}基本上,file_mgmt是一个div容器,它包含了链接到另一个链接的标签。由于Shift+click在新的_blank选项卡中打开链接,我希望防止它,因为它会破坏原始页面布局。
过了一段时间后放弃了,我甚至尝试了关注Mozilla doc:Event.preventDefault(),结果是一样的。
有什么建议吗?
发布于 2015-06-18 20:18:04
在单击div时阻止默认操作将不会做任何事情,因为在默认情况下,它不会做任何事情。您应该将click处理程序附加到实际的链接。
https://stackoverflow.com/questions/30914942
复制相似问题