js

  • js只有声明的变量会提升,初始化不会提升
        var x;     //声明           var y = 4;      //初始化


  • onmouseover鼠标移入显示的闪烁问题
        onmouseover 时需要显示一个层,onmouseout 时隐藏这个层。当鼠标移入的时候显示层不断闪烁。
    问题原因

        显示层遮住了添加事件的元素,所以反复执行 onmouseover onmouseout。
    解决办法

        给显示层添加样式: pointer-events: none;mdn上关于这个属性的解释是:
        pointer-events CSS 属性指定在什么情况下 (如果有) 某个特定的图形元素可以成为鼠标事件的 target
        意思就是添加了这个属性的元素在什么情况下可以成为鼠标事件的 target
        除了指示该元素不是鼠标事件的目标之外,值none表示鼠标事件“穿透”该元素并且指定该元素“下面”的任何东西。
        当元素的 pointer-events 属性取值为 none 的时候,表示该元素不是鼠标事件的目标元素,并且鼠标事件穿透该元素指定它下面的元素。
pointer-events: none;
  • HTMLSelectElement.checkValidity() 会检查元素是否有任何输入约束条件,并且检查值是否符合约束条件。 如果值是不符合约束条件的,浏览器就会在该元素上触发一个可以撤销的 invalid 事件。


 function myFunction() {    var x = document.getElementById("nu");  x.setCustomValidity("");//使用前先取消自定义,否则下次点击checkValidity总返false   if (x.checkValidity() == false) { x.setCustomValidity("错误"); document.getElementById("demo").innerHTML = x.validationMessage;   
      } else { x.setCustomValidity("正确"); document.getElementById("demo").innerHTML = x.validationMessage;   
      } }
  • ES6
    // ES5
     var x = function(x, y) { return x * y; } 
    // ES6(箭头函数不可提升,需先定义,建议使用const,函数表达式始终是个常量)
    const x = (x, y) => x * y;
  • 兼容
/*
 * 参数:
 *     obj:要绑定事件的对象
 *     eventStr:事件(注意:这里不要on)
 *      callback:回调函数
 */ function bind(obj , eventStr , callback){     
      if(obj.addEventListener){         //大部分浏览器   
              obj.addEventListener(eventStr , callback , false);    
         }else{         //IE8及以下         
                obj.attachEvent("on"+eventStr , function(){        
           //在匿名函数中调用回调函数            
                     callback.call(obj);         
            });     
      } }            
  • 浏览器窗口的宽高,兼容写法
    var w=window.innerWidth
    || document.documentElement.clientWidth
    || document.body.clientWidth;
    var h=window.innerHeight
    || document.documentElement.clientHeight
    || document.body.clientHeight;


全部评论

相关推荐

04-16 10:27
已编辑
美团_Saas_后端开发
今天周一休息,突发奇想写一篇阶段总结。如题,我已经去了一个和Java彻底毫无关联的行业。曾经我以为自己能在计算机行业发光发热,拿到美团offer那会感觉自己天都亮了。没想到刚入行一年多就当了逃兵。从最开始的热爱到现在一看到代码就厌恶,不知道自己经历了什么。所以我去干什么了?答案是:在成都当了租房销售。上班那会压力大了就念叨着去干租房中介,但是一直下不去这个决心,想着自己学了四年多的计算机知识,终究还是不甘心。终于在某一天准备八股文的时候,看着无数篇和工作内容关系不大的理论知识,那一刻下定决心,决定尝试一下销售行业,也算是给自己一个交代。后面阴差阳错的投了成都自如去当租房管家,没想到面试很顺利,在当天一百多个面试的人里面,我成为了为数不多通过的几个幸运儿之一。目前已经培训通过,正式入职,也开了单,有压力但是每天过得很开心,真心喜欢那种和人交流的感觉,哪怕是最后没有选择找我租房。说这些也是想告诉那些大三,大四正在找Java实习而焦虑的同学:你们现在还年轻,选择很多,容错率也很高,可以尽情去尝试自己喜欢的行业和工作。不用因为某一次的面试没通过或者简历石沉大海而焦虑,更不用因为身边人都在挤编程的独木桥就强迫自己跟风。也算是自己的碎碎念吧,也希望自己能在新的领域取得一点小成就。也祝牛油工作顺利!
沉淀小子:干啥都不丢人啊,生存是必须要的,销售很考验一个人综合素质能力的,好的销售人脉和资源可不比写字楼的白领差啊
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务