Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 28.10.2014, 17:13
hhh hhh вне форума
Профессор
Отправить личное сообщение для hhh Посмотреть профиль Найти все сообщения от hhh
 
Регистрация: 19.11.2013
Сообщений: 150

Код с toogleClass
Всем привет. Подскажите как это код написать с toogleClass по-профессиональней
$(window).scroll(function() {
if ($(this).scrollTop() >=150) {
$('.wrapp-logo a').addClass('anim');
}
else {
$('.wrapp-logo a').removeClass('anim');
};
});
Ответить с цитированием
  #2 (permalink)  
Старый 28.10.2014, 17:36
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

По-профессиональней - это не трогать класс при каждом событии скролла. Класс надо добавлять/убирать только при переходе через 150
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #3 (permalink)  
Старый 28.10.2014, 17:37
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,123

hhh,
$(window).scroll(function(){

$('.wrapp-logo a').toggleClass('anim', $(this).scrollTop() >= 150);

});
Ответить с цитированием
  #4 (permalink)  
Старый 28.10.2014, 19:19
hhh hhh вне форума
Профессор
Отправить личное сообщение для hhh Посмотреть профиль Найти все сообщения от hhh
 
Регистрация: 19.11.2013
Сообщений: 150

Сообщение от danik.js
По-профессиональней - это не трогать класс при каждом событии скролла. Класс надо добавлять/убирать только при переходе через 150
Так мне нужно чтобы при прокрутке более 150 пикселёу уменьшалось лого, и при обратной возвращались исходные размеры постоянно.
рони, благодарю
Ответить с цитированием
  #5 (permalink)  
Старый 28.10.2014, 19:27
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от hhh
Так мне нужно чтобы при прокрутке более 150 пикселёу уменьшалось лого, и при обратной возвращались исходные размеры постоянно.

Т.е. прокрутили с нуля до 160 - добавили класс, еще крутанули на пять пикселей - опять добавили класс (пытаемся втиснуть его дважды, но он не втискивается), и так далее.

Впринципе, ща потестил в хроме в его Timeline, не вижу каких-то проблем из-за лишнего поиска по DOM и доступа к className.
Либо я не туда смотрю, либо это малозначительно для быстрых компьютеров. Возможно на мобилках это влияет заметней.
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #6 (permalink)  
Старый 28.10.2014, 19:29
Аватар для ruslan_mart
Профессор
Отправить личное сообщение для ruslan_mart Посмотреть профиль Найти все сообщения от ruslan_mart
 
Регистрация: 30.04.2012
Сообщений: 3,018

$(function() {
    var elem = $('.wrapp-logo a'), flag;

    $(window).scroll(function() {
        var a = $(this).scrollTop() >= 150;
        if(!flag && a) {
             elem.addClass('anim');
             flag = true;
        }
        else if(flag && !a) {
             elem.removeClass('anim');
             flag = false;
        }
     });
});
Ответить с цитированием
  #7 (permalink)  
Старый 28.10.2014, 19:52
hhh hhh вне форума
Профессор
Отправить личное сообщение для hhh Посмотреть профиль Найти все сообщения от hhh
 
Регистрация: 19.11.2013
Сообщений: 150

Сообщение от danik.js
Т.е. прокрутили с нуля до 160 - добавили класс, еще крутанули на пять пикселей - опять добавили класс (пытаемся втиснуть его дважды, но он не втискивается), и так далее.

Впринципе, ща потестил в хроме в его Timeline, не вижу каких-то проблем из-за лишнего поиска по DOM и доступа к className.
Либо я не туда смотрю, либо это малозначительно для быстрых компьютеров. Возможно на мобилках это влияет заметней.
Спасибо, теперь понял почему быдлокод.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
javascript обфускатор или как правильно скрыть код syegorius Общие вопросы Javascript 1 19.09.2012 02:58
Не работает код Kendrick Internet Explorer 5 12.09.2012 16:14
Требуется выводить код рекламного блока Adsense из файла JavaScript??? speedflow Элементы интерфейса 0 26.05.2012 15:50
Как создать bodyclick код royksopp Общие вопросы Javascript 8 14.10.2011 16:39
код странно отрабатывает комбинацию клавиш ffx Общие вопросы Javascript 4 20.01.2011 10:58