JS小坑

Posted 油炸冰淇淋

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS小坑相关的知识,希望对你有一定的参考价值。

1、场景:需要写一个弹出框来容纳登录界面,类似于百度的登录框

   问题:使用  display: none/block  进行弹出框的显示和隐藏,设立点击事件   onclick  进行触发,但是点击过后目标框闪烁了一下就消失        了

  解决:在调用函数后加上 "return: false;"  即可解决。看图 ↓

      

      

  如果还没解决,看看你是否给需要显示的元素包裹了父元素!

2、场景:一个按钮或者链接上方覆盖了另一层元素,导致下层按钮无法被点击

   解决:首先会先到 z-index 来解决,但是z-index 有时候并不好使,我们还有更简单的做法  pointer-events: none;

   将某个元素 pointer-events的值设置为 none ,那么该元素将不会捕获任何click事件,即不会成为鼠标事件的target。而是让事件穿过该元素到达下面的元素!即可解决上述问题。pointer-events的值只有两个我们能用到 即 auto(默认) 、none 。其他值只能用在SVG上,因为人家本来就是SVG的属性啊。看图 

      

3、场景:设置一个按钮或者span等元素添加点击事件,频繁点击会出现蓝色背景,看图

  解决:1、 JS方法  document.onselectstart=new Function("return false");

     2、CSS方法body{} 添加以下代码:

    -webkit-user-select:none; 
    -moz-user-select:none;
    -ms-user-select:none;
    user-select:none;

 

以上是关于JS小坑的主要内容,如果未能解决你的问题,请参考以下文章

js中在循环中使用正则表达式遇到的小坑

谷歌浏览器调试jsp 引入代码片段,如何调试代码片段中的js

VSCode自定义代码片段——JS中的面向对象编程

小程序实践小坑小结

VSCode自定义代码片段9——JS中的面向对象编程

js代码片段: utils/lcoalStorage/cookie