使用.attr更改onMouseOver

时间:2013-08-14 11:14:27

标签: javascript jquery internet-explorer attributes onmouseover

所以,我将此opDiv1设置为onMouseOver="mhover(opDiv1)",但如果浏览器是IE,我想更改函数onMouseOver

我正在使用它:

if (ie!=undefined) { //If IE detected
        $('#opDiv1').attr("onMouseOver","mhover_ie('opDiv1')")
}

但是,如果我使用IE(任何版本),它不会改变onMouseOver的功能

2 个答案:

答案 0 :(得分:1)

试试这个......
从obj中移除attr onmouseover,并使用bind jQuery移除事件,如:

function addMouseEvent(){
    if (ie!=undefined) { //If IE detected
            $('#opDiv1').onmouseover(function(){
              mhover_ie('opDiv1');
            });
    } else {
            $('#opDiv1').onmouseover(function(){
              mhover('opDiv1');
            });
    }
}

jQuery(document).ready(function(){
  addMouseEvent();
});

答案 1 :(得分:1)

您可以通过这种方式更改IE的onMouseOver事件

if (ie != undefined) {
    document.getElementById('opDiv1').onmouseover = function () { mhover_ie('opDiv1'); };
};

<强>的信息: 将函数分配给onclick属性不会向DOM节点添加属性。