我正在构建一个Wordpress / Bootstrap网站,并尝试使用jquery在用户滚动浏览器时向导航栏添加“固定”类:
<script>
jQuery(function($){
$(document).on('scroll',function(){
var $this = $(this),
$menu = $('#menu'),
scrl = $this.scrollTop(),
menuHeight = $menu.height();
if( scrl > menuHeight ) {
$('#menu').css({
'position': 'fixed',
'top': 0
});
} else {
$('#menu').css({
'position': 'relative',
'top': menuHeight
});
}
});
});
</script>
Jquery工作正常 - 我已经测试了一个简单的警报事件等。 但是,我已经尝试了一段时间,无论我做什么,都无法让这样的窗口滚动事件发挥作用。我没有收到任何控制台错误。有人可以帮忙吗?
答案 0 :(得分:1)
它实际上是一个CSS问题,我有风格规则
if (isset($_POST['submit'])) {
// ... your code here
header('Location: ' . $_SERVER['PHP_SELF']);
}
删除此样式规则会使原始事件正确触发。
答案 1 :(得分:0)
您似乎在页面上加载了两个版本的jQuery - 1.11和1.4。旧版本(1.4)没有.on
API,可能是您遇到问题的原因。我建议删除版本1.4。
另外,我建议将滚动事件绑定到window
而不是document
。