1

Имеется код функции работающий с шириной и уровнем прокрутки $(window). Вызывать эту функцию необходимо либо в момент прокрутки страницы, либо в момент изменения размеров окна.

Подскажите, поалуйста, как объединить два этих события?

Другим словами нужно объединить:

$(window).scroll(function(){
    /* код функции */
});

$(window).resize(function(){
    /* тот же код функции */
});

UPD: Решение

Правильно:

var func = function(e){ /* resize and scroll logic */};
$(window).scroll(func).resize(func);

Не правильно:

$(window).scroll(function() { func() });
$(window).resize(function() { func() });
4
  • В голвоу так же приходит вариант прописать функцию отдельно и в случаях scroll и resize вызывать ее по ее идентификатору.
    – Cypher
    22 сен 2012 в 13:38
  • Нет, все верно, спасибо :). Достаточно элегантно! :) Я дошел еще до такого варианта: $(window).scroll(function() { func() }); $(window).resize(function() { func() });
    – Cypher
    22 сен 2012 в 13:58
  • @Cypher, отметьте ответ @Spectre как правильный, а свой оставьте, в качестве примера того, как делать не надо ))
    – Deonis
    22 сен 2012 в 14:47
  • Вы про сам код или про форматирования комментария? :) P.S. наконец нашел кнопочку преобразования комментария в ответ. В следующий раз сам справлюсь :). Спасибо )
    – Cypher
    22 сен 2012 в 15:22

1 ответ 1

1

не пойму что в этом сложного:

var func = function(e){ /* resize and scroll logic */};

$(window).scroll(func).resize(func);

или проблема глубже?

Ваш ответ

By clicking “Отправить ответ”, you agree to our terms of service and acknowledge you have read our privacy policy.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками или задайте свой вопрос.