對比例子中引入了一段js ,來兼容FF的onmouseenter和onm " /> 野花香在线观看免费高清播放视频,欧美多人群p刺激交换电影,小夫妻天天恶战

天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

javascript 兼容FF的onmouseenter和onmouseleave的代碼


IE下有 onmouseenter和onmouseleave來解決。
可惜ff就沒有。  我再想 , 為什么這么好的功能,為什么ff不引用呢?
還有ie中的onpropertychange  ,哎,ff中都沒有。。。

對比例子中引入了一段js ,來兼容FF的onmouseenter和onmouseleave. :
復制代碼 代碼如下:
var xb =
{
    evtHash: [],

    ieGetUniqueID: function(_elem)
    {
        if (_elem === window) { return 'theWindow'; }
        else if (_elem === document) { return 'theDocument'; }
        else { return _elem.uniqueID; }
    },

    addEvent: function(_elem, _evtName, _fn, _useCapture)
    {
        if (typeof _elem.addEventListener != 'undefined')
        {
            if (_evtName == 'mouseenter')
                { _elem.addEventListener('mouseover', xb.mouseEnter(_fn), _useCapture); }
            else if (_evtName == 'mouseleave')
                { _elem.addEventListener('mouseout', xb.mouseEnter(_fn), _useCapture); } 
            else
                { _elem.addEventListener(_evtName, _fn, _useCapture); }
        }
        else if (typeof _elem.attachEvent != 'undefined')
        {
            var key = '{FNKEY::obj_' + xb.ieGetUniqueID(_elem) + '::evt_' + _evtName + '::fn_' + _fn + '}';
            var f = xb.evtHash[key];
            if (typeof f != 'undefined')
                { return; }

            f = function()
            {
                _fn.call(_elem);
            };

            xb.evtHash[key] = f;
            _elem.attachEvent('on' + _evtName, f);

            // attach unload event to the window to clean up possibly IE memory leaks
            window.attachEvent('onunload', function()
            {
                _elem.detachEvent('on' + _evtName, f);
            });

            key = null;
            //f = null;   /* DON'T null this out, or we won't be able to detach it */
        }
        else
            { _elem['on' + _evtName] = _fn; }
    },    

    removeEvent: function(_elem, _evtName, _fn, _useCapture)
    {
        if (typeof _elem.removeEventListener != 'undefined')
            { _elem.removeEventListener(_evtName, _fn, _useCapture); }
        else if (typeof _elem.detachEvent != 'undefined')
        {
            var key = '{FNKEY::obj_' + xb.ieGetUniqueID(_elem) + '::evt' + _evtName + '::fn_' + _fn + '}';
            var f = xb.evtHash[key];
            if (typeof f != 'undefined')
            {
                _elem.detachEvent('on' + _evtName, f);
                delete xb.evtHash[key];
            }

            key = null;
            //f = null;   /* DON'T null this out, or we won't be able to detach it */
        }
    },

    mouseEnter: function(_pFn)
    {
        return function(_evt)
        {
            var relTarget = _evt.relatedTarget;                
            if (this == relTarget || xb.isAChildOf(this, relTarget))
                { return; }

            _pFn.call(this, _evt);
        }
    },

    isAChildOf: function(_parent, _child)
    {
        if (_parent == _child) { return false };

        while (_child && _child != _parent)
            { _child = _child.parentNode; }

        return _child == _parent;
    }    
};
本篇文章來源于 cssrain.cn 原文鏈接:http://www.cssrain.cn/article.ASP?id=952

JavaScript技術javascript 兼容FF的onmouseenter和onmouseleave的代碼,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 彭丹吃奶门| 中国老妇xxxhd | 少妇精品久久久一区二区三区 | 强奷漂亮女老板在线播放 | 亚洲精品一线二线三线无人区 | 国产久久亚洲美女久久 | 俄罗斯mm| 国产成人高清视频 | 91进入蜜桃臀在线播放 | 姑娘视频日本在线播放 | 97人妻无码AV碰碰视频 | 99视频免费播放 | 欧美特黄三级成人 | 亚洲中文无码永久免费 | 国产精品日本无码久久一老A | 韩国无遮羞禁动漫在线观看96 | 97精品伊人久久大香线蕉app | 色翁荡息又大又硬又粗又爽电影 | 在线欧美精品一区二区三区 | 久久se视频精品视频在线 | 欧美国产日韩久久久 | 久久是热频国产在线 | 精品国产午夜肉伦伦影院 | 亚洲精品免费网站 | 亚瑟天堂久久一区二区影院 | 一区二区视频在线观看高清视频在线 | 伊人久久精品AV无码一区 | 蜜臀AV精品久久无码99 | 久久国产视频网站 | 全黄h全肉短篇禁乱np | 999久久久无码国产精蜜柚 | 亚洲国产精品一区二区动图 | 国产精品久久久久久人妻精品蜜桃 | 男总裁憋尿PLAY灌尿BL | 国产午夜高潮熟女精品AV | 国产亚洲精品AV麻豆狂野 | 亚洲一区精品伊人久久伊人 | 精品国产午夜肉伦伦影院 | 性美国人xxxxx18 | 国产ZZJJZZJJ视频全免费 | 麻豆国产精品久久人妻 |