Jquery каждый и видимый - неизвестный псевдокласс или псевдоэлемент "видимый - PullRequest
2 голосов
/ 30 ноября 2010


У меня проблема с JQuery / видимым. Надеюсь, кто-нибудь может мне помочь.

Этот код работает, но я получаю ошибку в firebug

$('.fse:visible').each(function (i)

-> Неизвестный псевдокласс или псевдоэлемент «видимый».


вторая попытка

$('.fse').is(':visible').each(function (i)

-> $ (". Fse"). Is (": visible"). Каждый не является функцией

Что не так?

Заранее спасибо!
Peter

Ответы [ 6 ]

1 голос
/ 16 апреля 2014

Несмотря на старую статью, я не смог найти способ справиться с ней в качестве решения.И для меня это работает нормально.Итак, вот оно:

$('.fse').filter(':visible').each( function () {
    //do something here
});

Надеюсь, я смогу вам помочь.

1 голос
/ 30 ноября 2010

Я не думаю, что это Ошибка , но Предупреждение CSS вы получаете, и это нормально.Возникла такая же проблема (даже появляется на сайте jquery.com) некоторое время назад.

Смотрите обсуждение здесь: http://old.nabble.com/Unknown-pseudo-class-or-pseudo-element-%27odd%27.-td25425663s27240.html

1 голос
/ 30 ноября 2010

$ ('. Fse'). Is (': visible') проверяет, является ли элемент видимым или нет, и возвращает true или false. Добавление ".each" такое же, как если бы вы вводили "false.each (...)" или "true.each (...)". И "true" или "false" не имеют метода с именем "each".

Вы можете попробовать его, используя селектор поиска: $ .find ('. Fse: visible'). Each (...) или jQuery.find ('. Fse.visible').

1 голос
/ 30 ноября 2010

Первая ошибка немного загадочна, исходя из предоставленной вами информации.Второй имеет смысл, поскольку .is(":visible") возвращает логическое значение, а не объект jQuery.

0 голосов
/ 30 ноября 2010

Поскольку класс обычно может быть определен, вы не можете использовать его как $ (". Имя-класса: видимое"). Each (function (i))

попробуйте это:

if ($ ('.fse '). is (': visible ')) {// Сделайте что-то здесь
$ (this) .css ({' color ':' red '});}

0 голосов
/ 30 ноября 2010

Похоже, у вас также есть Prototype (или другая библиотека, использующая $), включенная в страницу, это так?

Попробуйте jQuery('.fse:visible').each(function (i) {..., чтобы убедиться, что это так.

...