Jquery 为什么图像需要在div/span元素中包围才能使效果正常工作?
我不太明白为什么一个图像可以在一个范围内工作,但不能单独工作。Jquery 为什么图像需要在div/span元素中包围才能使效果正常工作?,jquery,jquery-ui,jquery-plugins,jquery-effects,Jquery,Jquery Ui,Jquery Plugins,Jquery Effects,我不太明白为什么一个图像可以在一个范围内工作,但不能单独工作。 请参阅完整的示例 JS HTML vs 我认为确实需要将元素包装在一个DIV中。对于我的站点,较大的图像隐藏有问题;它只是垂直隐藏,而不是垂直和水平隐藏 包裹在DIV中解决了这个问题 我没有详细了解jQuery是如何执行hide(),但这种方式是有意义的,因为DIV是块元素,SPAN不是块元素。在您提供的链接中,它似乎工作得很好。在FF3.6.11/IE7中,该显示在无跨距图像上无法正常工作。当您环绕DIV时,你会从中得到很多灵
请参阅完整的示例 JS HTML
vs
我认为确实需要将元素包装在一个DIV中。对于我的站点,较大的图像隐藏有问题;它只是垂直隐藏,而不是垂直和水平隐藏 包裹在DIV中解决了这个问题
我没有详细了解jQuery是如何执行
hide()
,但这种方式是有意义的,因为DIV
是块元素,SPAN
不是块元素。在您提供的链接中,它似乎工作得很好。在FF3.6.11/IE7中,该显示在无跨距图像上无法正常工作。当您环绕DIV时,你会从中得到很多灵活性,我们不可能只凭形象就能做到所有这些。@gov:我想我们在同一时间得出了相同的结论。我猜这与block vs inline的布局性质有关。对我来说,这很奇怪,它会在某种程度上起作用;我本以为一切都会发生,或者什么都不会发生。
$(document).ready(
function ()
{
$('#banner').hover( function(event){ $(this).children().hide("slow");}
, function(event){ $(this).children().show("slow");}
);
}
);
<div id="banner">
<span><img src="http://static.jquery.com/files/rocker/images/logo_jquery_215x53.gif" title="Image" alt="Image"/></span>
</div>
<div id="banner">
<img src="http://static.jquery.com/files/rocker/images/logo_jquery_215x53.gif" title="Image" alt="Image"/>
</div>