您的位置:首页 > Web前端 > JavaScript

常用跨浏览器设置——JS总结

2015-05-31 21:38 591 查看
常用跨浏览器设置——JS总结
1.跨浏览器添加事件

<pre name="code" class="javascript">        function addEvent(obj,type,fn) {
            if (obj.addEventListener) {
                obj.addEventListener(type,fn,false);
            } else if (obj.attachEvent) {
                obj.attachEvent('on' + type, fn);
            }
        }




2.跨浏览器移除事件

<pre name="code" class="javascript">        function removeEvent(obj,type,fn) {
            if (obj.removeEventListener) {
                obj.removeEventListener(type,fn,false);
            } else if ( obj.detachEvent) {
                obj.detachEvent('on' + type,fn);
            }
        }




3.跨浏览器字符编码

function getCharCode(evt) {
            var e = evt || window.event ;
            if (typeof e.charCode == 'number') {
                return e.charCode;
            } else {
                return e.keyCode;
            }
        }


4.跨浏览器获取可视范围内窗口大小

<pre name="code" class="javascript">        function getInner() {
            if(typeof window.innerWidth != 'undefined'){
                return {					              //属性试-封装
                    width:window.innerWidth,
                    height:window.innerHeight
                }
            } else {
                return {
                    width:document.documentElement.clientWidth,
                    height:document.documentElement.clientHeight
                }
            }	
        }




5.跨浏览器获取滚动条位置

function getScroll(){
            return{
                top:document.documentElement.scrollTop || document.bady.scrollTop,
                left:document.documentElement.scrollLeft || document.body.scrollLeft
            }
        }


封装——抽象

通过抽象、封装而得到像公式一样的函数体,很多功能函数,语言本身没有给出,但给出了基本获取方法,我们需要的功能可能还需要进行适当的拼装和使用适当的算法处理,最终得到适宜我们使用的函数。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: