我尝试在达到某个滚动条时将颜色更改为标题。我在jQuery中使用这个脚本:
var $document = jQuery(document),
$element = jQuery('#header'),
className = 'red';
$document.scroll(function() {
$element.toggleClass(className, $document.scrollTop() >= 400);
});
除了IE8之外,它适用于所有浏览器。 IE8不支持toggleClass吗?我该如何解决?
任何帮助将不胜感激。感谢
jsFiddle:http://jsfiddle.net/itzuki87/e4XTw/
在IE中:http://jsfiddle.net/itzuki87/e4XTw/show/
答案 0 :(得分:2)
问题是$(document)
在IE中被读取不同。 IE更喜欢使用$(window)
。您会发现以下内容更具跨浏览器兼容性。
$(function() {
$(window).scroll(function(e) {
$("#header").toggleClass("red", $(this).scrollTop() >= 400);
});
})
或使用您的变量类型设置:
jQuery(function() {
var $window = jQuery(window),
$element = jQuery("#header"),
className = "red";
$window.scroll(function(e) {
$element.toggleClass(className, jQuery(this).scrollTop() >= 400);
});
})