我可以在jQuery .css()方法中使用伪类吗?

时间:2013-05-20 17:49:04

标签: jquery jquery-selectors

我有以下jQuery代码,它只是作为类,但:hover导致它不起作用。

$('.dd_question:hover').css('border','1px dashed #333333');

我可以在$()方法中使用一些特殊代码吗?或者:hover根本不允许?

2 个答案:

答案 0 :(得分:6)

jQuery选择器在代码执行时选择与选择器匹配的元素,而不是当用户将鼠标悬停在元素上时。

考虑到这一点,$('.dd_question:hover')将仅选择具有该类的元素,并且当代码执行时当前正在悬停,这很可能是0元素。

您需要使用mouseenter和mouseleave事件(或简称悬停),或者只使用css。

答案 1 :(得分:6)

其他人已经解释了为什么您使用的代码无效,但另一个问题是如何解决它。获得你正在寻找的效果的最佳方法可能是

.hoverborder:hover {border: 1px dashed #333333;}
在你的CSS中

,然后使用

$('.dd_question').addClass('hoverborder');

在你的javascript中。