достичь элемента подкласса через JQuery это - PullRequest
1 голос
/ 28 февраля 2012

РЕДАКТИРОВАТЬ: ниже приведен псевдокод для представления реальных классов $ ('a: hover'); и $ (a.subClass); чего я хочу достичь с помощью «этого», будучи «этим» = <a>.

например. $(this:hover), $(this.subClass)

Хотя это неправильный синтаксис, вы можете понять это. Допустим, $(this); относится к элементу <a>, и я хотел бы достичь его :hover псевдокласса.

как бы ты это сделал?

У меня есть элемент DOM ', которого я могу найти в jquery как $ ( 'А'); или $ (это);

У этого элемента есть псевдоклассы (например, hover) и подклассы (например, .customClass), к которым я хочу обратиться.

p.s. Я обновил этот вопрос, чтобы сделать его более понятным, спасибо.

Ответы [ 5 ]

1 голос
/ 28 февраля 2012

Вот для чего нужны методы jQuery .is() и .hasClass().Они возвращают истину или ложь, если элемент соответствует заданному селектору или имеет определенный класс соответственно.

Вы не можете использовать .is() для наведения, хотя посмотрите на присоединение функций обработчика к изменению состояния при наведении с помощью .hover(function, function).

1 голос
/ 28 февраля 2012

Может быть, вы имеете в виду что-то подобное?

$(this).filter(':hover')
0 голосов
/ 28 февраля 2012

Я думаю, что вы смешиваете CSS с JS.
Идея JS - сделать страницу интерактивной.Если вы хотите, чтобы что-то произошло после «наведения» элемента, вам следует использовать событие, например hover event:

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

, возможно, вам нужна эта информация для оператора if, извините, яне могу использовать Google прямо сейчас :) проблемы с Конном :) я обновлю свой ответ, если это необходимо.

0 голосов
/ 28 февраля 2012

Лучший способ - переключить класс для наведения и проверить класс

0 голосов
/ 28 февраля 2012

Вы просто не можете этого сделать, потому что такого селектора не существует.

Я не знаю, что вы на самом деле пытаетесь сделать.Но если вы хотите узнать все имена классов из элемента, вы можете попробовать это.

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