На моем сайте есть страницы, которые динамически загружают контент без необходимости менять страницы. У меня есть следующий jquery-плагин, созданный в моем файле javascript, который должен делать определенные вещи, когда страница прокручивается вниз.jQuery Прокрутка события прокрутки без фактической прокрутки
$.fn.scrollEvent= function() {
$(document).on("scroll", function() {
console.log("Scroll");
if($(window).scrollTop() + $(window).height() == $(document).height()) {
// do stuff
}
});
};
Так что, когда пункт меню щелкнуло, я загрузить новое содержание страницы, и я называю JQuery плагина, поэтому он может быть использован на новой странице.
$(document).ready(function() {
$(document).on("click", ".menu-item", function() {
$.fn.scrollEvent();
// do other page stuff
});
});
Однако то, что я заметил, что когда я называю плагин, консоль регистрации «Свиток», прежде чем я сделать что-нибудь на этой странице. Таким образом, событие прокрутки вызывается один или два раза без меня вообще прокрутки.
Почему это происходит? Есть лучший способ сделать это?
Спасибо, что помогли – Josh
Caching $ (окна) и $ (документ) за пределами события прокрутки и использование === вместо == поможет прокрутки производительности здесь , –