js 怎样使div无法响应点击事件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js 怎样使div无法响应点击事件相关的知识,希望对你有一定的参考价值。
js 怎样使div无法响应点击事件
根据div的id去决定某个div标签无法响应点击事件
如何写呢?
<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事件只触发一次,就是我点击了一次,再次点击的时候不让其再触发