<rmcreative>

RSS

jQuery, :reallyvisible

17 октября 2008

В jQuery есть селектор :visible, который выбирает элементы, если они не скрыты. Но работает он не всегда как нужно: он выбирает элементы, скрытые с помощью css свойств display или visibility.

Чтобы выбрать также элементы, которые скрыты т.к. скрыт их контейнер, можно расширить jQuery так, как это сделал Remy Sharp:

jQuery.extend(
  jQuery.expr[ ":" ], 
  { reallyvisible : "!(jQuery(a).is(':hidden') || jQuery(a).parents(':hidden').length)" }
);

Используется, например, так:

$('h1:reallyvisible').each(function(){
  //тут что-нибудь с ними делаем
});

Комментарии RSS

  1. Почта опубликована не будет.

  2. Можно использовать синтаксис Markdown или HTML.

  3. Введите ответ в поле. Щёлкните, чтобы получить другую задачу.