问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

怎么在以下代码的div中添加一个关闭按钮,或者说鼠标点击页面的其它地方div自动隐藏

发布网友 发布时间:2022-05-29 14:25

我来回答

1个回答

热心网友 时间:2023-10-21 05:52

(一)加入关闭按钮只要再加一个onclick 时间就行了,turnoff(‘ ’)里的参数可以改变。代码如下

<html>
<meta charset="gbk">
<head>

<script>
var hide=function()
{
    var divs=document.getElementsByTagName("div");
    for (var i=0;i<divs.length ;i++ )
    {
        divs[i].style.display="none";
    }
}
window.onload=function(){
  hide();
  var a=document.getElementsByTagName("td");
  for(var i = 0; i < a.length; i++)
  {
        a[i].onclick = function(oEvent)
        {
            oEvent = oEvent || event;hide();
            document.getElementById("div"+this.id).style.display="block";
        }
    }
}
// 加入关闭操作的函数
function turnoff(obj){
document.getElementById(obj).style.display="none";
}

</script>
</head>
<body>

<table >
<tr>
<td  id="1">
<a href="#">弹出层1</a>
</td>
<td id="2">
<a href="#">弹出层2</a>
</td>
<td id="3">
<a href="#">弹出层3</a>
</td>
</tr>
</table>

<div  id="div1" style="background:#0F0; width:200px; height:100px;">
<p>层1 </p><a href="#" onclick="turnoff('div1')">点击关闭</a>
</div>

<div id="div2" style="background:#00F;width:200px; height:100px;">
<p>层2 </p><a href="#" onclick="turnoff('div2')">点击关闭</a>
</div>

<div id="div3" style="background:#F00;width:200px; height:100px;">
<p>层3 </p><a href="#" onclick="turnoff('div3')">点击关闭</a>
</div>

</body>
</html>

(二)点击div之外的地方隐藏div,方法多种,但都是通过 js操作到事件源,判断这个事件源的ID是不是在要隐藏的div 即点击事件发生的范围是否在div之外,但前提是事件不能和你前面写的js事件发生冲突。 注册一个document.onclick或者document.onmousedown事件来监控鼠标点击div以外的区域时事件,你给这个div的id属性赋一个页面唯一的值比如<div id="tAnChu" />

代码如下:

document.onclick = function (event)  
        {     
            var e = event || window.event;  
            var elem = e.srcElement||e.target;  
                  
            while(elem)  
            {   
                if(elem.id == "tAnChu")  
                {  
                        return;  
                }  
                elem = elem.parentNode;       
            }  
            //隐藏div的方法  
            HiddenDiv();  
        }


上个单一div事例:

<html>
    <head>
  <script type='text/javascript'>
   window.onload = function(){
     document.onclick = function(e){
       e = e || window.event;
       var dom =  e.srcElement|| e.target;
if(dom.id !="tAnChu" && document.getElementById("tAnChu").style.display == "block")
        {
                 document.getElementById("tAnChu").style.display = "none";
                }
            };
        };
        function openTanChu(e) {
            document.getElementById("tAnChu").style.display = "block";
            e = e||window.event;
            if(+'\v1') {
                e.stopPropagation();
            } else  {
                e.cancelBubble = true;
            }
             
        }
    </script>
    <style>
        #tAnChu{
            position:fixed;
            left:40%;
            top:100px;
            background-color:#ccc;
            width:200px;
            height:120px;
            display:none;
        }
    </style>
</head>
<body>
<input type="button" value="打开" onclick="openTanChu(event)" />
    <div id="tAnChu">
        这是弹出层
    </div>
</body>

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
梦到老婆生下儿子一生下儿子就活蹦乱跳 痤疮的抗生素治疗 胸前皮肤痒如何止痒 马拉色菌毛囊炎 面部怎么清洗? NYC 指数是什么意思? 扬州学区多久划分一次 为什么磁铁的磁场是电磁线的磁场呢? 为什么国内求职很少有overqualified这种说法? ...表示你已经做好了工作的准备,同时怎么让面试官对你有个好的第一印... ...同日本及西欧关系的演变,并简述其对世界和中国的影响。 求解,想实现点击div块里的关闭按钮,div块隐藏,生成cookie,一天内再次进入页面div块不会再出现 CSS中用position:fixed定位右下角一小窗口,这小窗口可以用JS来控制关闭吗,可以的话又如何写JS代码 css中定义的关闭按钮,在ie中变成了隐藏 电脑装机后硬盘空间减少了。 电脑重装系统后硬盘变的少了 为什么重装系统后我的硬盘减少了?? qq冻结你能解? 高一物理必修一 牛顿第二定律 雾隐才藏的创作年表 雾隐注册过商标吗?还有哪些分类可以注册? 火影忍者七忍众有哪些人啊 通过JAVA反射调用方法的问题,一个很简单的示例,就给出有疑问的地方了 想要考公务员需要了解那些方面的知识 怎么去设置对方的手机号 山东有哪些比较靠谱的艺考美术画室呢? 山东的美术艺考机构有哪些呢? Win7系统的工具栏怎么设置成小窗口显示?不要显示成工具条的样子。 注塑机培报告的怎么写 注塑月度提升计划 爱你在心口难开的歌曲鉴赏 css如何去掉input &quot;submit&quot;标签中的按钮图片 按钮需要正常使用 能够布局 主要是不想裁剪图片 如何去掉时间选择器的下拉按钮 css 点击关闭div按钮 请问谁知道这是哪,有红包 QQ浏览器能进谷仓医疗信息平台吗? qq牧场里的呼呼牛和赫赫鸡是哪儿来的啊?在哪儿买啊? QQ情侣空间谷仓的仓储量不足怎么破? 怎样看紫薇命盘 300m无线宽带路由器型号mw305r的pin码是多少 水星系列300M无线宽带路由器 型号:MW305R能代替猫吗有何影响 水星路由器MW305R300m,连两个无线网络机顶盒,离路由器远的信号不好,总 啥工作适合大学生暑假兼职? 女声版的等一分钟是谁唱的?? 等一分钟童声版那个小女孩叫什么名字 很好听 她还翻唱过什么歌 有一首歌 是一个女的唱的 声音比较低沉 节奏感很强 觉得旋律挺像徐誉滕的等一分钟的前面部分 为什么我发Windows7,64位系统产品密钥只有20位数?不是25位吗 抖音最流行的音乐如果生命没有遗憾没有波澜女生版的是谁唱的 windows10密钥后面5位数是9d6t9不知前面的数字 win10 10041 64位 简体中文版,密钥到底多少 相亲约会初次见面有哪些禁忌