2012-02-27 120 views
1

编辑:下面是代表真实类的伪代码$('a:hover');和$(a.subClass);我希望通过'this'来达到目的,即'this'= <a>。通过jQuery获取元素子类

例如$(this:hover),$(this.subClass)

坚韧不是一个正确的语法,你可能会明白。 假设$(this);指的是一个<a>元素,我想要达到它的:hover伪类。

你会怎么做?

我有一个DOM元素',我可以在jQuery中作为 $('a');或$(this);

该元素具有我想要达到的伪类(例如:悬停)和子类(例如.customClass)。

p.s.我已经更新了这个问题,使其更清楚,谢谢。

+0

你想从伪类中获得什么信息?也许你可以试着从这个问题开始备份,然后就你真正想做什么提出一个更广泛的问题。 – treeface 2012-02-27 21:29:39

+0

http://stackoverflow.com/questions/1642072/jquery-css-hover – Veger 2012-02-27 21:30:10

回答

1

也许你的意思是这样的吗?

$(this).filter(':hover') 
+1

你有:在jQuery悬停选择器? .hover!=:hover – 2012-02-27 21:30:25

+0

我知道这不是一个正确的语法,我用它来表示$('a:hover');在伪代码中。 – jobsmxli 2012-02-27 21:44:19

0

你只是不能这样做,因为没有这样的选择器存在。

我不知道你实际上想要做什么。但是如果你想从元素中找出所有的类名,那么你可以试试这个。

var classes = this.className.split(' '); 
1

这就是jQuery的.is().hasClass()方法对。如果元素匹配给定的选择器或分别具有特定的类,则它们返回true或false。

您不能使用.is()悬停,看看附加处理函数悬停状态更改.hover(function, function)

0

最好的办法是切换的悬停和测试类

0

我觉得你与JS混合CSS。
JS的想法是使页面交互。如果你想使事情发生后,“徘徊”的元素,你应该使用的事件,例如hover事件:

$(this).hover(
    function(){alert('mouse in');}, 
    function(){alert('mouse out');} 
); 

它可能是你需要这个信息if语句的话,对不起,我不能用谷歌现在:)康恩问题:)我会更新我的答案,如果需要的话。