Как проверить, является ли html-элемент видимым или нет, если он находится внутри переполненной области элемента div со свойством overflow, установленным в значение hidden? - PullRequest
0 голосов
/ 25 августа 2010

У меня есть набор элементов LI с пропиткой переполнения, установленной на
jCarouselLite плагин. Что я хотел бы сделать это прокрутить элемент jCarouselLite'd для прокрутки к Элемент LI, который я хочу, так как он настроен на показать только 3 элемента. Глядя на HTML-код, сгенерированный плагином, я вижу:

<ul ..>
    <li ..style="..overflow:hidden">1</li>
    <li ..style="..overflow:hidden">2</li>
    <li ..style="..overflow:hidden">3</li>
    <li ..style="..overflow:hidden">4</li>
</ul>

Итак, у меня есть первые 3 элемента LI, показанные плагином, но не последний. То, что я хотел бы сделать, это прокрутить, чтобы показать 4-й элемент LI, или я могу сделать это самостоятельно, если мне удастся проверить, находится ли последний LI в области переполнения, так что я могу видеть, нужно ли прокручивать для чтобы показать это или нет.

Надеюсь, я не запутался, чтобы понять.

Ответы [ 2 ]

0 голосов
/ 25 августа 2010

Я не смог найти ответ на свой исходный вопрос, но, как и для любого пользователя плагина jCarouselLite, я сделал, чтобы сделать прокрутку carouselLite к определенному элементу, - изменить только объявление частного метода перейти плагина, чтобы сделать его публичным, как показано ниже:

.. code ..
go = $.fn.jCarouselLite.go = function go(to) {
        if(!running) {
    .. code ..
}
.. code ..

Я уверен, что это не самое лучшее и, что более важно, более безопасное решение, но пока оно работает для меня. Просто нужно позвонить

$().jCarouselLite.go(position);

в моем сценарии, учитывая позицию как число, начинающееся с 0 (первая позиция в carouselLite).

0 голосов
/ 25 августа 2010

Если я правильно вас понимаю, вы хотите проверить, не переполнен ли стиль последней ли в этой группе: hidden.

Вы можете сделать это с помощью простого селектора.

$(document).ready(function(){

  tester = $('li').last().css('overflow');
  alert (tester);

});​

Это установит стиль переполнения последнего li в переменную "tester", и когда он отправит окно с предупреждением, он оповестит о текущем состоянии переполнения. Таким образом, если для переполнения задано значение «скрыто», будет указано «скрытое», а если для параметра «Переполнение» выбрано значение «Прокрутка», будет указано «прокрутка».

Извините, если я не понял правильно или не ответил на ваш вопрос.

...