Javascript 除一个div外的主Onclick
我有一个问题,我不知道该怎么办。 我有以下代码:Javascript 除一个div外的主Onclick,javascript,html,onclick,Javascript,Html,Onclick,我有一个问题,我不知道该怎么办。 我有以下代码: <main onclick="test()" id="main"> <div id="test1"></div> <div id="test2"></div> <div id="test3"></div> <div id="NO-test4"></div> <div id="test5">
<main onclick="test()" id="main">
<div id="test1"></div>
<div id="test2"></div>
<div id="test3"></div>
<div id="NO-test4"></div>
<div id="test5"></div>
<div id="test6"></div>
<div id="test7"></div>
</main>
这样,如果我单击divs将执行“test()”函数,如果我希望id为“NO-test4”的div不执行此onclick,我该怎么办?在单击处理程序中,您需要测试,以查看单击的元素是否是要排除的元素。因此,您需要将
事件
对象传递给您的函数:
<main onclick="test(event)" id="main">
演示:
如果删除内联onclick=
属性,而是从JS绑定单击处理程序,则事件
对象将自动传递给函数:
document.getElementById("main").addEventListener("click", test);
(该代码需要位于“main”元素之后的脚本元素中,或者位于文档就绪或onload处理程序中。)
演示:只需单击所需的div即可:
<main id="main">
<div id="test1" onclick="test()"></div>
<div id="test2" onclick="test()"></div>
<div id="test3" onclick="test()"></div>
<div id="NO-test4"></div>
<div id="test5" onclick="test()"></div>
<div id="test6" onclick="test()"></div>
<div id="test7" onclick="test()"></div>
</main>
您可以使用
jquery处理单击
$( document ).ready(function() {
$("#main").children('div').click(function () {
if ($(this).attr("id") == "NO-test4")
alert ('Disabled');
else
test();
});
});
你尝试过什么吗…?这个问题似乎离题了,因为这是一篇简单的“为我编写代码”的帖子。但不是很容易扩展,是吗?解决了,这就是解决方案。
$( document ).ready(function() {
$("#main").children('div').click(function () {
if ($(this).attr("id") == "NO-test4")
alert ('Disabled');
else
test();
});
});