我试图通过jQuery和JavaScript为我正在开发的wordpress网站触发滚动事件。
$(window).scroll(function() {
var hT = $('#target').offset().top;
hH = $('#target').outerHeight();
wH = $(window).height();
wS = $(this).scrollTop();
console.log((hT-wH) , wS);
if (wS > (hT+hH-wH)){
console.log('working');
}
});
控制台上没有任何反应。以下代码不起作用:
$(window).scroll(function() {
console.log('scrolling');
});
也不这样做:
function scrollFunction() {
console.log('scrolling');
}
window.onscroll = scrollFunction;
我已经在其他非wordpress项目上测试了这些行,即使在codepen中也可以使用。我错过了什么?
我正在使用jQuery 12.2.2。此外,在同一个项目中,出于同样的目的,我无法在this other question发布作品Waypoints.js。
非常感谢任何帮助,谢谢!
答案 0 :(得分:1)
你有没有关闭代码?也许其他一些JavaScript与jQuery冲突并使用$符号。
e.g。像这样包装它以确保$是jQuery:
(function($){
$(window).scroll(function() {
var hT = $('#target').offset().top;
hH = $('#target').outerHeight();
wH = $(window).height();
wS = $(this).scrollTop();
console.log((hT-wH) , wS);
if (wS > (hT+hH-wH)){
console.log('working');
}
});
})(jQuery);
答案 1 :(得分:0)
你试过这个吗?
<script>
window.onscroll = function() {scrolling()};
function scrolling() {
console.log("Scrolling");
}
</script>
答案 2 :(得分:0)
尝试以下代码......:)
将$(window).scroll(function(){});
替换为$(window).on('scroll', function(){})
$(window).on('scroll', function(){
var hT = $('#target').offset().top;
hH = $('#target').outerHeight();
wH = $(window).height();
wS = $(this).scrollTop();
console.log((hT-wH) , wS);
if (wS > (hT+hH-wH)){
console.log('working');
}
});