zoukankan      html  css  js  c++  java
  • js实现点击div以外区域,隐藏div区域

    <body style="text-align:center;">
      <input type="text" style="200px;height:30px;background:pink;margin-top:100px auto 0;">
      <div style="300px;height:300px;background:red;margin:0 auto;display:none;"></div>
    <script>
    var input=document.getElementsByTagName('input')[0];
    var div=document.getElementsByTagName('div')[0];
    //第一种写法
    input.addEventListener('click',function(event){
       event=event||window.event;
       div.style.display="block";
      event.stopPropagation();
    })
     document.addEventListener('click',function(event){
       event=event||window.event;
       div.style.display="none";
      event.stopPropagation();
    })
     div.addEventListener('click',function(event){
      event=event||window.event;
      div.style.display="block";
      event.stopPropagation();
     })

    第二种写法

    document.onclick=function(event){
      event=event||window.event;
      div.style.display="none";
      event.stopPropagation();
    }
    input.onclick=function(event){
      event=event||window.event;
      div.style.display="block";
      event.stopPropagation();
    }
    div.onclick=function(event){
      event=event||window.event;
      div.style.display="block";
      event.stopPropagation();
    }
    //阻止冒泡的兼容写法
    function stopEvent(event){
      var e=arguments.callee.caller.arguments[0] || event;//这里是因为除了IE有event其他浏览器没有所以要做兼容
      if(window.event){ //这是IE浏览器
        e.cancelBubble=true;//阻止冒泡事件
        e.returnValue=false;//阻止默认事件
      }else if(e && e.stopPropagation){ //这是其他浏览器
        e.stopPropagation();//阻止冒泡事件
        e.preventDefault();//阻止默认事件
      }
    }
    </script>
    </body>
  • 相关阅读:
    滑雪在日本 之 新泻篇 7
    就算神游 之四:富士山和富士游乐园 12
    滑雪在日本 之 新泻篇 15
    就算神游 之四:富士山和富士游乐园 6
    滑雪在日本 之 新泻篇 6
    就算神游 之四:富士山和富士游乐园 13
    滑雪在日本 之 新泻篇 4
    20121022日记流水账
    滑雪在日本 之 新泻篇 8
    滑雪在日本 之 新泻篇 5
  • 原文地址:https://www.cnblogs.com/fqh123/p/9853491.html
Copyright © 2011-2022 走看看