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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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(); //移除所有 

参考技术A

你是指事件冒泡么,作为一个编程菜鸟,我平常用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>

参考技术B 不知道你具体想实现什么效果?
div只有你绑定了事件处理函数,才会有响应,如果不想响应,不给div绑定事件函数或者注销掉之前绑定的函数就可以了啊
如果你是这样的情况,比如布局是这样:
<div id="box">
<div id="div1"></div>
</div>
box 上有事件,但你不想在点击div1 时响应box 的事件,那就可以取消div1的事件冒泡,假设已经获取到div1,不想响应的事件是点击事件,大概代码是:
div1.onclick = function(ev)
ev.cancelBubble = true;
参考技术C

代码如下:

//首先获取所有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;

;

;

;

参考技术D 大概是两种方式,
1】js的方式,写另外一个事件来判断,阻止你要响应的事件
2】css方式,在你想阻止的区域上面定位一个看不见的div,挡住目标div

js怎么实现点击div区域外任意位置,使这个div隐藏?

用的jquery,本身这个div是点击另一个按钮用的toggle(),来显示和隐藏的,现在我想让鼠标点击div区域外任意地方都把这个div隐藏,请问怎么实现好呢?谢啦

参考技术A 我觉得可以给表单加上事件,但是这样会不会点击这个div时也会隐藏呢,没有测过,只是个人见解,希望能帮到你本回答被提问者采纳

以上是关于js 怎样使div无法响应点击事件的主要内容,如果未能解决你的问题,请参考以下文章

怎样使js中的onclick事件只触发一次,就是我点击了一次,再次点击的时候不让其再触发

vue.js怎样移除绑定的点击事件

js如何阻止onclick点击事件响应两次

【C# panel】怎样能使填充窗体后的panel响应一下鼠标事件呢?

用JS添加的DIV,无法触发onclick事件 请求帮助

js怎么实现点击div区域外任意位置,使这个div隐藏?