$(window).width() 和 $('body').scrollLeft() 在 IE 和 Fi
$(window).width() and $('body').scrollLeft() not working in IE and Firefox
样本:http://kat.isltest.net/col/
此示例站点正在使用 chrome。该功能是身体居中,即使它包含 1600px 的宽div。然后,默认情况下,滚动条在每个窗口大小中居中。
现在,问题是这在IE和Firefox中不起作用。
代码如下:
if ($(window).width() <= 1600) {
$('body').scrollLeft(0);
}
if ($(window).width() <= 1400) {
$('body').scrollLeft(110);
}
if ($(window).width() <= 1360) {
$('body').scrollLeft(130);
}
if ($(window).width() <= 1280) {
$('body').scrollLeft(170);
}
if ($(window).width() <= 1152) {
$('body').scrollLeft(235);
}
if ($(window).width() <= 1024) {
$('body').scrollLeft(300);
}
if ($(window).width() <= 800){
$('body').scrollLeft(400);
}
你们知道为什么吗?多谢!:)
您需要使用在调整窗口大小时执行的侦听器包装代码,否则滚动条仅调整一次:
$(window).on('resize', function() {
/* your code */
});
我想当浏览器窗口的宽度小于 1600px 时,chrome 将其垂直滚动条调整到中心的原因是默认行为,与您的代码无关。
编辑
此外,如果您希望视口滚动,则需要使用$(document).scrollLeft()
而不是$('body').scrollLeft()
。
如果你想滚动点击任何按钮,那么你可以使用jquery执行以下操作。
$('#next').click(function(event) {
event.preventDefault();
$('.surr-cor').animate({
scrollLeft: "+=1350px"
}, "slow");
});
提到火狐的事件,因为它适用于事件。您可以将.surr-cor
替换为div 元素或body
相关文章:
- 为什么这在IE中的工作方式与在Firefox中不同
- 后焦点更改为IE 11中的地址栏,而不是转移到表单中的下一个控件
- 如何在读取XLS/XLSX本地文件时,使用IE的javascript代码启用未标记为安全的ActiveX控件
- jQuery blueimp文件上传:将N-1个文件上传到IE中的服务器
- 有没有一种方法可以在控制台关闭的情况下让console.log()在IE中记录消息
- 设置倒计时计时器,IE出现问题
- 仅在IE中,javascript中的时区名称不正确
- 在IE中加载Firebug Lite时出现问题
- 为什么我得到错误IE修剪方法是't支持
- IE中的CSS翻转动画:翻转的一面显示镜像内容
- 通过具有IE<11
- IE在将字符串转换为日期时从日期中删除4小时
- 列表样式在IE中未设置为none,但在IE中适用
- IE/Chrome中未定义的函数,但Firefox中没有
- Jquery Modal表单登录与AJAX-ASP经典上的IE 9
- window.opener.document在ie中不起作用
- IE中关于ZK和JavaScript集成的一些错误
- 为什么Telerik cdn在IE中不起作用
- $(window).width() 和 $('body').scrollLeft() 在 IE 和 Fi
- Chrome和ie的控制台显示'top'是'undefined',但是Safari和Fi