javascript - 跨浏览器的 JavaScript

标签 javascript jquery cross-browser

我有这个 JavaScript,可以让我通过单击页面的顶部/底部来向上/向下滚动页面。

$(function() {
$("#next").on("click", function() {
    $("body").animate({"scrollTop": window.scrollY + (window.innerHeight - 60)}, 100);
    return false;
});
}); 

$(function() {
$("#previous").on("click", function() {
    $("body").animate({"scrollTop": window.scrollY - (window.innerHeight - 60)}, 100);
    return false;
});
});

在这里查看 JSFIDDLE: https://jsfiddle.net/cztqjwb2/3/

知道如何使其跨浏览器吗?

最佳答案

某些浏览器将滚动条附加到正文,其他浏览器将滚动条附加到 html 元素。

你可以像这样跨浏览器

$("html, body").animate( ....

要使其在旧版 IE 中也能工作,您必须用某些东西替换 scrollY,jQuery 似乎是显而易见的选择

$("html, body").animate({
    scrollTop: $(window).scrollTop() + $(window).height() - 60
}, 100);

关于javascript - 跨浏览器的 JavaScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29590434/

相关文章:

jquery - 圆框中的链接?在所有浏览器中(是的,包括 IE8)

css - 如何防止大字体在 Chrome (OSX) 中看起来呈锯齿状?

javascript - Mongoose 更新子文档数组对象

javascript - YUI 3. 以编程方式触发 onSubmit

javascript - JSON/JavaScript 获取对象键

html - 如何在没有表格的情况下实现表格的居中功能

带日期的 Javascript json 数组过滤器

javascript - 从 CDN 加载 Ace 编辑器

javascript - 将 cURL 转换为 JQuery.ajax 请求

javascript - 如何返回上一页并在 php 或 javascript 中刷新它?