欢迎访问 生活随笔!

生活随笔

当前位置: 首页 >

js实现enter键tab功能

发布时间:2024/3/24 55 豆豆
生活随笔 收集整理的这篇文章主要介绍了 js实现enter键tab功能 小编觉得挺不错的,现在分享给大家,帮大家做个参考.


这个是不用修改,直接放在js里就可以用的:

//按enter键实现tab键的效果
document.οnkeydοwn=function(evt){
 //document.all可以判断浏览器是否是IE,是页面内所有元素的一个集合
 var isie = (document.all) ? true : false;
 var key;
 var srcobj;
 // if the agent is an IE browser, it's easy to do this.
 if (isie) {
  key = event.keyCode;
  srcobj=event.srcElement;//event.srcElement,触发这个事件的源对象
 }
 else {
  key = evt.which;
  srcobj=evt.target;//target是Firefox下的属性
 }
 if(key==13 && srcobj.type!='button' && srcobj.type!='submit' &&srcobj.type!='reset' && srcobj.type!='textarea' && srcobj.type!='') {
  if(isie)
   event.keyCode=9;//设置按键为tab键
  else {
   var el=getNextElement(evt.target);
   if (el.type!='hidden')
    ;   //nothing to do here.
   else
    while(el.type=='hidden')
     el=getNextElement(el);
   if(!el)
    return false;
   else
    el.focus();
  }
 }
}


function getNextElement(field) {
 var form = field.form;
 for(var e = 0; e < form.elements.length; e++) {
  if (field == form.elements[e])
  break;
 }
 return form.elements[++e % form.elements.length];
}

顺便介绍一下document.all的功能:

document.all用法 
一.

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

{  
    alert("is   IE!");  
}
三.
也可以通过给某个元素设置id属性(id=aaaa),然后用document.all.aaaa调用该元素
四.
案例:

代码1:    
  <input   name=aaa   value=aaa>  
  <input   id=bbb   value=bbb>   
  <script   language=Jscript>  
      alert(document.all.aaa.value)     //根据name取value  
      alert(document.all.bbb.value)     //根据id取   value  
  </script>    
代码2:  
但是常常name可以相同(如:用checkbox取用户的多项爱好的情况)   
  <input   name=aaa   value=a1>  
  <input   name=aaa   value=a2>  
  <input   id=bbb   value=bbb>  
  <script   language=Jscript>  
      alert(document.all.aaa(0).value)     //显示a1  
      alert(document.all.aaa(1).value)     //显示a2  
      alert(document.all.bbb(0).value)     //这行代码会失败 
  </script>    
代码3:  
理论上一个页面中的id是互不相同的,如果出现不同tags有相同的id  
  document.all.id   就会失败,就象这样:  
  <input   id=aaa   value=a1>  
  <input   id=aaa   value=a2>  
  <script   language=Jscript>  
      alert(document.all.aaa.value)     //显示   undefined   而不是   a1或者a2 
  </script>  

 也就是说document.all[]是文档中所有标签组成的一个数组变量,
包括了文档对象中所有元素
 document.all[]这个数组可以访问文档中所有元素。

 

总结

以上是生活随笔为你收集整理的js实现enter键tab功能的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。