Сообщение от рони
|
pistachio,
может так изначально нужно было
jQuery(function(f) {
f(window).scroll(function() {
f('#hide-navbar-header')[(f(this).scrollTop() > 180 ? "add" : "remove") + "Class"]("hide-navbar-header_fixed")
.[(f(this).scrollTop() > 180 ? "remove" : "add") + "Class"]("hide-navbar-header_hide");
});
});
|
Как работает этот сатанинский код? Минут пять втыкаю, не могу понять
f это псевдоним jQuery, понятно. Вот эта строка что делает?:
f('#hide-navbar-header')[(f(this).scrollTop() > 180 ? "add" : "remove") + "Class"]("hide-navbar-header_fixed")
Тернарный оператор преобразуется в "add" или "remove", получаем примерно это:
f('#hide-navbar-header')["addClass"]("hide-navbar-header_fixed")
Это такое вырвиглазное обращение к методу коллекции jQuery? Кто-нибудь пояснит мне, зачем так делать?