У меня есть разные divs и menuebar, которые составляют LI-элементы.Если в окне просмотра; изменить цвет границы
Названия div: # сначала # 4.
Если один из DIV (или больше) есть/находится в окне просмотра, я хочу изменить цвет нижней границы для li-элемента, который ссылается на этот DIV.
Например: Если DIV # третье находится в видовом экране, третий элемент LI (# nav3) должен изменить его нижнюю границу на зеленый. Если он покинет окно просмотра, он должен снова измениться на белый.
- Только что время DIV находится в окне просмотра. Как только он покинет область просмотра, я хочу отменить изменение цвета.
Я попробовал его с JQuery Viewport: http://www.appelsiini.net/projects/viewport
Моя проблема в том, что я не могу понять, как использовать этот селектор - Я знаю, что это основной материал, но я действительно не могу понять это.
$("#third:in-viewport").each(function() {
$("#nav1, #nav2, #nav4").animate({ borderBottomColor: '#fff' },800);
$("#nav3").animate({ borderBottomColor: 'green' },800);
});
Было бы здорово, если бы кто-нибудь мог мне помочь в этом. Большое спасибо!
использовать $ ("# NAV1 # NAV2 # nav4 "). animimate ({borderBottomColor: '#fff'}, 800); удалить запятая между # nav1, # nav2, # nav4. – SanketS
Как насчет этого? http://stackoverflow.com/questions/123999/how-to-tell-if-a-dom-element-is-visible-in-the-current-viewport/7557433#7557433 Обратите внимание, что когда вы находитесь вне элемента из окна просмотра (потому что событие), вы также можете просто скрыть его и проверить, видно ли это. – nkmol
@SanketS Это не сработает, потому что 'nav1',' nav2' и 'nav4' не являются дочерними. – putvande