事件兼容方法

前端JS技巧合集

1.可视区

document.documentElement.clientWidth || document.body.clientWidth

2.滚动高度

document.documentElement.scrollTop || document.body.scrollTop

3.className

     function getClass (cname){

              if(document.getElementsByclassName){

                      return document.getElementsByclassName(cname)

 

              }else{

              objAll=document.getElementsByTagName('*')

              var arr=[]

              for(var i=0;i<objAll.length;i++){

                  if(objAll[i].className==(cname){

                          arr.push(objAll[i])

                      }

                }

                    return arr

           }

}

4.获取非行间样式

function getStyle (obj,attr){

       if(window.getComputedStyle){

            return window.getComputedStyle(obj,null)[attr]

     }else{

          return boj.currentStyle[attr]

       }

}

5.getAttribute

标准:  getAttribute('class')

ie :     getAttribute('className')

6.事件对象

ev = event || window.event

7.阻止默认行为

obj.事件 = function (ev){

ev=event || window.event

if(ev.preventDefault){

return ev.preventDefault();

}else{

return value = false

}

}

8.阻止页面文字或图片拖拽

 标准 : return false

 ie : obj.setcapture() 建立全局捕获

             releasecapture() 释放(取消)全局捕获

9.鼠标按钮

     function getButton(){

            ev = event || window.event

       if(ev){

             return e.button

       }else if(window.event){

              switch(e.button){

               case1:return 0;

               case2:return 1;

               case3:return 2;

            }

        }

  }

10.阻止冒泡

     function bubble(event){

            if(event.stoppropagation){

                 event.stoppropagation()

          }else{

               event.cancelBubble = true

             }

   }

11.添加事件

    function   addmyEvent( obj,event,fn){

         if( obj.addEventListener){

           return obj.addEventListener(event,fn,false)

       }else {

          return obj.attachEvent('on'+event,fn)

          }

   }

12.移除事件

    function removeEvent(obj,event,fn){

          if( obj.removeEventListener){

              return  obj.removeEventListener(event,fn,false)

      }else{

            return   obj.detaEvent('on'+event,fn)

          }

}

13.事件对象兼容

     function  getTarge(ev){
      ev = event || window.event

      if(ev.target){

        return ev.target

      }else{

            return ev.srcElement

          }

 }

14.ajax创建对象兼容

    var ajax=null

   if(window.XMLHttpRequest){

      ajax = new XMLHttpRequest()

 

   }else{

      ajax = new ActiveObject('Micrsoft.XMLHTTP')

  }

最小数下标

function min(arr){

  var a = arr[0]

  var index=0

  for(var i=1;i<arr.length;i++){

   if(a>arr[i]){

      a = arr[i]

       index = i

      }

     return index;

   }

 

 

}

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值