关于按enter进行登录的js实现(判断是否是IE或者是其他浏览器)

来源:互联网 发布:2pac知乎 编辑:程序博客网 时间:2024/06/05 18:27

document.onkeydown = function(e){     var ev = document.all ? window.event : e;    if(ev.keyCode==13) {    $("#login").trigger("click");    }<span style="font-family:Verdana, Arial, Helvetica, sans-serif;">}</span>

一.

 document.all是页面内所有元素的一个集合。例如:      
 document.all(0)表示页面内第一个元素
二.
document.all可以判断浏览器是否是IE  
  if(document.all){  
    alert("is   IE!");  
  }
三.

也可以通过给某个元素设置id属性(id=aaaa),然后用document.all.aaaa调用该元素


四  enter键的ASCII是13


五  var ev = document.all ? window.event : e;

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


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

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


var btn = document.getElementById('btn');//一个按钮btn.onclick = function(event){//给btn绑定一个点击事件  //其他浏览器会在点击发生的时候,把事件对象当作参数传递过来  alert('其他浏览器:' + event);  //在<a href="https://www.baidu.com/s?wd=ie%E6%B5%8F%E8%A7%88%E5%99%A8&tn=44039180_cpr&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00T1d9m1fYujRkuH-bPhm1rj630ZwV5Hcvrjm3rH6sPfKWUMw85HfYnjn4nH6sgvPsT6K1TL0qnfK1TL0z5HD0IgF_5y9YIZ0lQzqlpA-bmyt8mh7GuZR8mvqVQL7dugPYpyq8Q1Dvn1T4nWmvPHczP1m3nWT3PW0" target="_blank" class="baidu-highlight">ie浏览器</a>中,这个event变量是空,它会在全局的window上  alert('<a href="https://www.baidu.com/s?wd=ie%E6%B5%8F%E8%A7%88%E5%99%A8&tn=44039180_cpr&fenlei=mv6quAkxTZn0IZRqIHckPjm4nH00T1d9m1fYujRkuH-bPhm1rj630ZwV5Hcvrjm3rH6sPfKWUMw85HfYnjn4nH6sgvPsT6K1TL0qnfK1TL0z5HD0IgF_5y9YIZ0lQzqlpA-bmyt8mh7GuZR8mvqVQL7dugPYpyq8Q1Dvn1T4nWmvPHczP1m3nWT3PW0" target="_blank" class="baidu-highlight">ie浏览器</a>:' + window.event);}

这样在处理的时候,为了统一处理event对象,就需要区别出来ie和别的浏览器

而在ie中的document对象有一个all属性,里面存放了页面中所有的标签

在其他浏览器中是没有这个属性的,所以,可以用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);}






0 0