js 怎样使div无法响应点击事件

js 怎样使div无法响应点击事件
根据div的id去决定某个div标签无法响应点击事件
如何写呢?

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<!-- 引入jquery -->
<script src="js/jquery-1.7.2.min.js"></script>
</head>
<body>

<ul>
<li>第一个</li>
<li>第二个</li>
<li id="unbind">第三个</li>
</ul>

<script>
$(function(){
//给li绑定点击事件
$("li").click(function(event) {
//返回当前li的索引
alert($(this).index());
});
//给id为unbind的元素删除点击事件
$('#unbind').unbind("click");
})
</script>
</body>
</html>

unbind(type [,data])     //data是要移除的函数

$('#btn').unbind("click"); //移除click

$('#btn').unbind(); //移除所有 

温馨提示:内容为网友见解,仅供参考
第1个回答  2018-03-31

你是指事件冒泡么,作为一个编程菜鸟,我平常用stopPropagation来阻止事件冒泡

例:

<div id="outer" onclick="alert('外面')">

//这里我没给div加样式,自己随便加个长和宽背景色就行了

<div id="inner" ></div>

</div>

<srtipt>

var inner = document.getElementById("inner");

inner.onclick = function(e){

alert("里面");

if(e && e.stopPropagation()){

stopPropagation();

}else{

window.event.cancelBubble = true;

//ie不支持stopPropagation方法,需要用window.event.cancelBubble

}

}

</srtipt>

本回答被网友采纳
第2个回答  2017-06-20
不知道你具体想实现什么效果?
div只有你绑定了事件处理函数,才会有响应,如果不想响应,不给div绑定事件函数或者注销掉之前绑定的函数就可以了啊
如果你是这样的情况,比如布局是这样:
<div id="box">
<div id="div1"></div>
</div>
box 上有事件,但你不想在点击div1 时响应box 的事件,那就可以取消div1的事件冒泡,假设已经获取到div1,不想响应的事件是点击事件,大概代码是:
div1.onclick = function(ev){
ev.cancelBubble = true;
}
第3个回答  2017-06-22

代码如下:

//首先获取所有div 然后你不是要根据div ID进行判断吗

var aDiv=document.getElementsByTagName('div');

//遍历div
for(var i=0;i<aDiv.length;i++){

aDiv[i].onclick=function(){

if(this.id='你要排除的那个div ID'){

return;

};

};

};

第4个回答  2017-05-13
大概是两种方式,
1】js的方式,写另外一个事件来判断,阻止你要响应的事件
2】css方式,在你想阻止的区域上面定位一个看不见的div,挡住目标div
相似回答