<body style="text-align:center;">
  <input type="text" style="width:200px;height:30px;background:pink;margin-top:100px auto 0;">
  <div style="width: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>

js实现点击div以外区域,隐藏div区域的更多相关文章

  1. JS 实现点击页面任意位置隐藏div、span

    通过调用下面的 showhidden(“标签ID”) 显示div/span/…等标签内容,可以实现点击页面任意地方再次隐藏该标签内容,而showhidden(“标签ID”,”nohidden”)可保存 ...

  2. jquery点击非div区域隐藏div

    点击非div区域隐藏div,如图,点击圆的头像(.person-msg)弹出白色底框(.person-centre).点击圆头像以外的区域隐藏白色底框

  3. JQ 点击指定文本框显示div。点击其他区域隐藏DIV

    <input id="username" type="text" style="width:90%;margin-top: 40px;" ...

  4. 点击页面其它地方隐藏div所想到的jQuery的delegate

    在网页开发的过程中经常遇到的一个需求就是点击一div内部做某些操作,而点击页面其它地方隐藏该div.比如很多导航菜单,当菜单展开的时候,就会要求点击页面其它非菜单地方,隐藏该菜单. 先从最简单的开始, ...

  5. 由点击页面其它地方隐藏div所想到的jQuery的delegate

    对于这个问题一般有两种思路,这两种思路都会利用事件冒泡这一原理,想要详细了解Javascript事件机制可以看看JavaScript与HTML交互——事件,这不是本文重点,所以这里只是简单介绍一下事件 ...

  6. Js-Html 前端系列--点击非Div区域隐藏Div

    最近做项目要用到三字码下拉,调用一个插件,但是滚动条不能点击. 后来看另一个插件后突发奇想,在点击其他区域的时候隐藏这个Div就可以了. 背景:输入文字,弹出下拉Div,点击或者拉动Div滚动条选择, ...

  7. 原生JS实现点击一个按钮显示一个div,再点击按钮div隐藏,或点击除div外其它空白处div隐藏

    <!DOCTYPE html> <html style="font-size: 24px"> <head> <title>js点击按 ...

  8. 点击页面任何位置隐藏div

    <include file="Public:header" /> <style type="text/css"> table{width ...

  9. IOS中div contenteditable=true无法输入 fastclick.js在点击一个可输入的div时,ios无法正常唤起输入法键盘

    原文地址: https://blog.csdn.net/u010377383/article/details/79838562 前言 为了提升移动端click的响应速度,使用了fastclick.js ...

  10. jquery点击按钮显示和隐藏DIv

    function changeDisplay() { if ($("#btnShow").attr("value")== "添加附件") { ...

随机推荐

  1. VMware按装ISO

    破解码 vmware12 5A02H-AU243-TZJ49-GTC7K-3C61N vmware14CG54H-D8D0H-H8DHY-C6X7X-N2KG6 创建虚拟机 也可以选第三个直接选择Ce ...

  2. SFTP文件下载

    FTP并不是唯一的上传文件的方法,大部分情况下都可使用sftp代替.sftp是什么呢? sftp是Secure File Transfer Protocol的缩写,安全文件传送协议.可以为传输文件提供 ...

  3. linux下复制文件报cp: omitting directory `XXX'

    错误操作:这个错误是因为在linux下我使用cp复制一个文件夹A到另一个目录下时报错cp: omitting directory `XXX' 原因:文件夹A中还有子目录文件,所以linux不允许直接复 ...

  4. JS 省市县三级联动

    $(".area").change(function(ent,arg){ var $this = $(this), level = $(this).attr("id&qu ...

  5. Qt编写activex控件在网页中运行

    qt能够实现的东西非常多,还可以写activex控件直接在网页中运行.参照qtdemo下的例子即可. 方案一:可执行文件下载:https://pan.baidu.com/s/14ge9ix2Ny0x7 ...

  6. VMware ESXI5.5 Memories limits resolved soluation.

    在使用VMware ESXI5.5 的时候提示内存限制了,在网上找的了解决方案: 如下文: 1. Boot from VMware ESXi 5.5; 2. wait "Welcome to ...

  7. JavaScript 异步进化史

    前言 JS 中最基础的异步调用方式是 callback,它将回调函数 callback 传给异步 API,由浏览器或 Node 在异步完成后,通知 JS 引擎调用 callback.对于简单的异步操作 ...

  8. nginx expires配置

    配置expiresexpires起到控制页面缓存的作用,合理的配置expires可以减少很多服务器的请求要配置expires,可以在http段中或者server段中或者location段中加入   1 ...

  9. 跟bWAPP学WEB安全(PHP代码)--OS命令注入

    背景 这是温故知新的一个系列,也是重新拾起WEB安全的一个系列,同时希望能稍微有点对初学者的帮助.第一篇先来讲讲OS命令注入 bWAPP里面有两个页面也就是两个漏洞,来验证OS命令注入.一个是有回显的 ...

  10. stdarg.h头文件源代码分析

    谈到C语言中可变参数函数的实现(参见C语言中可变参数函数实现原理),有一个头文件不得不谈,那就是stdarg.h 本文从minix源码中的stdarg.h头文件入手进行分析: #ifndef _STD ...