实际上,我试图禁用html页面中的所有元素,但是有一些元素是我想要激活的。
$('body').find('*').attr('onclick',"return false;"); //Disabling all elements
// Trying to make this id("prerequisitedetails") active.
$("#prerequisitedetails").parents().attr('onclick',null).off('click');
有人能告诉我该怎么做吗。
发布于 2015-06-10 17:45:24
有人能告诉我该怎么做吗。
不要使用onclick
属性,使用真实的事件处理程序。
这应该可以做到:
$('body')
.find('*')
.not($("#prerequisitedetails").parents().addBack())
.click(false);
这样做的目的是:
body
后代的元素prerequisitedetails
元素或其任何父元素。注意addBack
,所以我们包括元素本身。尽管考虑过这一点,但您是否确信确实希望允许单击元素的父级而不是元素的后代?你可能想:
$('body')
.find('*')
.not($("#prerequisitedetails").find("*").addBack())
.click(false);
这与上面的情况类似,但它保留的“启用”元素是prerequisitedetails
元素及其后代。
不过,这有点蛮力。您可能会查找与模态对话框相关的问题和答案,该对话框通常使用一个shim元素来捕获单击,然后使用z-index
将您想要的元素“放在”该元素的前面。
https://stackoverflow.com/questions/30763552
复制相似问题