Javascript 如何使HTML元素不可链接?
如何在不单击的情况下创建HTML元素 JavaScript单击每个元素。单击元素将获得Javascript 如何使HTML元素不可链接?,javascript,html,click,Javascript,Html,Click,如何在不单击的情况下创建HTML元素 JavaScript单击每个元素。单击元素将获得警报(this.id)。如何使parent2不可单击,但内部的按钮允许您单击 当然,我将有更多的parent3,parent..4,其中包含div和表单。有简单的方法吗 如果有办法在父项(子项)中单击所有项,则会有所帮助。父母2,父母3。。。不单击,但在Parent2..、3..内的窗体可单击 var div=document.getElementsByTagName(“div”); var divCount
警报(this.id)
。如何使parent2
不可单击,但内部的按钮允许您单击
当然,我将有更多的parent3
,parent..4
,其中包含div和表单。有简单的方法吗
如果有办法在父项(子项)中单击所有项,则会有所帮助。父母2,父母3。。。不单击,但在Parent2..、3..内的窗体可单击
var div=document.getElementsByTagName(“div”);
var divCount=div.length;
var-clickedDivId;
对于(变量i=0;i
#父级{
宽度:450px;
高度:170px;
利润率:10px;
填充:10px;
背景颜色:蓝色;
}
#父母2{
宽度:450px;
高度:170px;
利润率:10px;
填充:10px;
背景颜色:蓝色;
}
#父母3{
宽度:450px;
高度:170px;
利润率:10px;
填充:10px;
背景颜色:蓝色;
}
#孩子{
宽度:430px;
高度:70像素;
利润率:10px;
浮动:左;
背景色:红色;
}
点击我!
点击
我
为按钮添加id或其他内容,并使用e.target检查事件是否源自该按钮。下面是片段
document.addEventListener("click", function (e){if(e.target.id == "button") {alert("button clicked")}})
这将从onclick事件中排除
parent2
:
var div=document.getElementsByTagName(“div”);
var divCount=div.length;
var-clickedDivId;
对于(变量i=0;i 如果(div[i].id!=“parent2”){/如果希望您的parent2 div
不运行任何代码,只需在单击divid==“parent2”
时返回
var allDivs=document.queryselectoral(“div”);
var disDivs=document.queryselectoral(“div.dis”);
var divCount=allDivs.length;
对于(变量i=0;i
#家长#家长2#家长3{
宽度:450px;
高度:170px;
利润率:10px;
填充:10px;
背景颜色:蓝色;
}
#孩子{
宽度:430px;
高度:70像素;
利润率:10px;
浮动:左;
背景色:红色;
}
.迪斯{
游标:不允许
}
点击我!
点击
我
您可以向按钮添加一些CSS代码,如:
button {
position: absolute;
top: 0;
left: 10px;
}
使用此代码按钮可获得比父框更高的级别,
请记住,父框必须具有位置:相对,而不是在div上单击事件时附加,仅将其置于按钮上,并且事件处理程序应实现警报和停止触发逻辑
无需在div
你的代码应该是
HTML
<div id="parent">
<div id="child"></div>
</div>
<div id="parent2">
<button id="myButton" type="button" onclick="buttonClicked(event)">Click Me!</button>
</div>
如果您不希望在单击#parent2
时收到通知…为什么要在其上设置一个onclick
?为什么允许按钮传播事件,但如果不希望按钮单击传播,则停止在其他处理程序上传播?您试图解决的问题是什么?(没有更多的上下文,这就像那个笑话“医生,医生,当我这样做的时候,它伤害了我”-“那就不要这样做”)当然,我会有更多的parent3,parent4…里面有div和表单。有没有一种简单的方法你可以把id保存在一个数组中,并检查点击的id是否存在于该数组中你也可以给禁用的div分配类。检查更新的代码。检查更新的代码。这可能更清楚。我为混淆道歉当然我会有更多的parent3,parent4…内部有div和表单。有简单的方法吗?那么你的问题是什么?@aldin_abdagicParent和child必须单击,parent2,3…不能单击,但必须单击内部的按钮
function buttonClicked(event){
console.log('lklklk', event)
event.stopPropagation();
alert('Hello world!')
}