为什么跨度会在mouseenter上消失?

时间:2012-08-29 15:50:36

标签: jquery

<DIV id=gallery2>
  <DIV class=center_content>
    <A id=example2 class=photo-link title=567 href="http://www.hdwallpapersarena.com/wp-content/uploads/2012/06/Desktop-wallpaper-Free-honey-bee1.jpg" rel=group1 smoothbox?>
      <IMG id=mygal class=mygalclass src="http://www.hdwallpapersarena.com/wp-content/uploads/2012/06/Desktop-wallpaper-Free-honey-bee1.jpg" width=132 height=137>
    </A>
  </DIV>
</DIV>

将鼠标悬停在蜜蜂图片上会显示span有链接,但当我选择span它会消失时,我想这是因为图像的mouseleave事件。

这是一个演示http://jsfiddle.net/sbYG4/13/

如何将DivImageSpan绑定到同一onmouseentermouseleave

2 个答案:

答案 0 :(得分:0)

回答你的第一个问题:我们无法说出来,因为我们没有事件的代码。

在回答第二个问题时,请给所有3个同一个班级,并将onmouseenteronmouseleave处理程序附加到班级。

如果你正在使用jQuery,它看起来像这样:

$('.theClassYouGaveThem').bind("mouseenter", function(){/*Code here */ });

$('.theClassYouGaveThem').bind("mouseleave", function(){/*Code here */ });

或者如果你想同时做这两件事,

$('.theClassYouGaveThem').bind("mouseenter mouseleave", function(){/*Code here */ });

答案 1 :(得分:0)

只需使用div id将all all绑定在一起,这样每当它进入该div时,所有span img等都会受到影响,因为你使用的是anchor标记而且没有text-decoration的规范在css中并将其设置为none,您可以将anchor标记用作display:inline-block,这样它就可以占用一个空格并可以在onmouseenter和{{1}时执行操作发生

使用它可以工作(再次为多个图像更新)

onmouseleave

加上从$(".photo-link").on({ mouseenter: function () { $(this).find('span').fadeIn('slow'); }, mouseleave: function () { $(this).find('span').fadeOut('slow'); } }); 移除了display:none,因为A.delete已经拥有它