• 【2017-7-13】JS 中 var ev = document.all ? window.event : e; 附加ASCII对照表


    var ev = document.all ? window.event : e; 这个在js中定义怎么理解呢

    这个是用来区别ie 和其他浏览器的一个判断

    在ie中,事件传播的时候,生成的事件对象会绑定到全局的window上

    而在其他浏览器中,事件对象将会是一个局部变量,传到方法中

    var btn = document.getElementById('btn');//一个按钮
    btn.onclick = function(event){//给btn绑定一个点击事件
      //其他浏览器会在点击发生的时候,把事件对象当作参数传递过来
      alert('其他浏览器:' + event);
      //在ie浏览器中,这个event变量是空,它会在全局的window上
      alert('ie浏览器:' + window.event);
    }


    而在ie中的document对象有一个all属性,里面存放了页面中所有的标签这样在处理的时候,为了统一处理event对象,就需要区别出来ie和别的浏览器

    在其他浏览器中是没有这个属性的,所以,可以用document.all来判断是否为ie浏览器

    然后进行event处理

    var btn = document.getElementById('btn');
    btn.onclick = function(event){//给btn绑定一个点击事件
      //这里用一个三元表达式来做简单判断,如果存在document.all那么使用window.event
      //否则就直接用event
      var ev = document.all ? window.event : event;
      alert(ev);
    }
     
    //这个写法可以稍微简单一些
    btn.onclick = function(event){
      //直接用这个判断,如果存在event对象,则直接用他,否则用window.event
      var ev = event || window.event;
      alert(ev);
    }
    document.onkeydown = function (e) {
                    var ev = document.all ? window.event : e;
                    if (ev.keyCode == 13) {//判断是否为按下的Enter键,如果是执行下面的
                        $('#btnLog_Factory').click();
                    }
                }

    附加ASCII表

  • 相关阅读:
    数据结构之单链表及其函数算法
    数据结构之KMP算法next数组
    FastDFS的简单使用
    富文本编辑器kindeditor的使用
    SpringSecurity的简单入门
    Dubbo+zookeeper实现单表的增删改查
    windows批量删除当前目录以及子目录的所有空文件夹
    Echarts的简单入门
    基于JAX-RS规范的webService入门
    RESTFull开发风格
  • 原文地址:https://www.cnblogs.com/hanqi0216/p/7158933.html
Copyright © 2020-2023  润新知