在纯javascript中有什么替代方案吗?
下面是歌剧,铬合金和游猎的作品。还没有在explorer上测试过:
http://monkey-me.herokuapp.com
https://github.com/coolcatDev/monkey-me-heroku/blob/master/static/js/myscripts.js
在页面加载时应向下滚动到div '.content':
var destiny = document.getElementsByClassName('content');
var destinyY = destiny[0].offsetTop;
scrollTo(document.body, destinyY, 200);
function scrollTo(element, to, duration) {
if (duration <= 0) return;
var difference = to - element.scrollTop;
var perTick = difference / duration * 2;
setTimeout(function() {
element.scrollTop = element.scrollTop + perTick;
scrollTo(element, to, duration - 2);
}, 10);
};
发布于 2016-09-23 17:36:52
标准是document.documentElement
,这是FF和IE使用的标准。
WebKit使用document.body
,并且不能使用该标准,因为如果他们更改为该标准,就会抱怨向后兼容,这篇文章很好地解释了这一点
https://miketaylr.com/posts/2014/11/document-body-scrolltop.html
文档中有一个WebKit现在支持的新属性
https://developer.mozilla.org/en/docs/Web/API/document/scrollingElement
这样你就可以找到正确的元素了
var scrollingElement = document.scrollingElement || document.documentElement;
scrollingElement.scrollTop = 100;
也有一个多层填充
https://stackoverflow.com/questions/28633221
复制相似问题