j查询悬停效果问题在IE浏览器上

jQuery hover effect issue on internet explorer

本文关键字:IE 浏览器 问题 查询 悬停      更新时间:2023-09-26

我基本上写了自己的jQuery悬停效果插件,可以在除IE(9,8,7)以外的所有浏览器中运行。

这是链接 : http://www.fiver.org/web/testing这是代码:

function go()
{
  hoverEffect = document.getElementsByName("hoverEffect");
  for (i=0; i<hoverEffect.length; i++)
  {
    $(hoverEffect[i]).bind('mouseenter', bMouseOver);
    $(hoverEffect[i]).bind('mouseleave', bMouseOut);
  }
  function bMouseOver(e)
  { 
    $(this).find(".fadebox")
      .animate({opacity: 1},
      300);                                         
  }

  function bMouseOut(e)
  { 
    $(this).find(".fadebox")
      .animate({opacity: 0},
      {duration: 'slow'});
  }

}
$(document).ready(function(){
    go();
});

这是一个基本的悬停效果,让我头疼! 你有什么想法吗???

最好

IE-s getElementsByName有一些问题,我不会依赖它。

尝试给这些元素一个类,而不是名称,并使用jQuery选择它们。

.HTML:

<div class="hoverEffect">one</div>    
<div class="hoverEffect">two</div>
<div class="hoverEffect">three</div>

使用 JQuery 选择它们,并分配事件:

$(".hoverEffect").bind('mouseenter', bMouseOver);
$(".hoverEffect").bind('mouseleave', bMouseOut);

这也将摆脱通过 DOM 的额外迭代和使用不必要的数组(hoverEffect[])

尝试使用 opacity:

.00 而不是 opacity:0

jQuery 不透明度动画在使用 .00 作为零不透明度而不是 0 时效果更好。我无法真正解释和找到任何文档,但它过去已经解决了我的问题。

此外,有关此脚本中不起作用的内容的更多信息将有助于:)