Как я могу вызвать функцию несколько раз?
Моя проблема заключается в следующем: я разрабатываю удобный для мобильных устройств веб-сайт с двумя таблицами стилей, один для визуализации, ориентированной на ПК, а другой для мобильной визуализации. Наряду с 2 CSS, мне нужна функция для изменения некоторыхhref
атрибуты в меню при переключении из одного режима визуализации в другой.
Я не буду вдаваться в подробности, потому что это будет очень долго и, вероятно, скучно, в любом случае мне нужно, чтобы функция вызываласьобе на$(document).ready
И на$(window).resize
, то есть каждый раз, когда окно изменяется.
Поэтому я объявил функцию и назвал ееgoToAnchor
чтобы иметь возможность звонить более одного раза:
$(document).ready(function() {
function goToAnchor() { ... modify some href attr ... }
goToAnchor();
});
Это прекрасно, но, как я уже сказал, мне также нужно, чтобы функция выполнялась при каждом изменении размера окна, поэтому я подумал, что код может выглядеть следующим образом:
$(document).ready(function() {
function goToAnchor() { ... modify some href attr ... }
goToAnchor();
$(window).resize(goToAnchor());
});
Проблема проста, функция не работает наresize
, Я проверил документацию jQuery и заметил, чтокаждый Пример связывания функции с событием написан так:
$(window).resize(function() { ...do stuff...} );
Я бы не стал прибегать к использованию анонимной функции, поскольку я уже писал эту функцию ранее. То, что я хочу сделать, предельно просто: вызывать функцию несколько раз, не прибегая к анонимным функциям, чтобы «дублировать» мой код (в конце концов, именно так функции должны работать, верно?).