我正在通过Lynda.com的JS教程,他们有一整章关于按钮的图像rollevers。当我可以使用CSS--创建图像rollevers时,为什么我会使用JS?
答案 0 :(得分:3)
为什么我可以在使用CSS时使用JS来创建图像滚动器?
你不应该,听起来教程可能只是用它作为一个例子来教你JS。当使用CSS实现相同的结果时,您不应该更喜欢JS到CSS。
答案 1 :(得分:2)
在这些着作时,:hover伪类不存在和/或并非所有浏览器都支持。因此,javascript是实现翻转效果的首选方法。
现在CSS:hover伪类存在并且在所有主流浏览器中都受支持;因此,首选CSS方法。
答案 2 :(得分:2)
有时您想要在翻转时更改内容图片而不是背景图片(并将两个版本的内容图片放在一起,然后使用:hover
隐藏并显示它们在没有表现层的情况下,“内容没有意义”这一领域已经落脚了。)
答案 3 :(得分:0)
我能想到的原因(除了已经提到的那些)是在非锚元素上使用:hover伪选择器,当使用严格的doctype时,在IE7和IE8中导致性能问题。
参考:http://code.google.com/speed/page-speed/docs/rendering.html#UseEfficientCSSSelectors
但在我看来,这仍然不足以让JS使用CSS。
答案 4 :(得分:0)
我认为kingjeffrey的回答css hover vs. javascript mouseover很棒。我更喜欢这种方法,因为关闭js的用户仍然可以使用大多数浏览器的菜单,而使用旧浏览器的用户如果没有关闭js,仍然会有功能菜单。我认为这个解决方案可以使菜单适用于大多数情况。