0
目前,我有以下代码滚动到一个div:平滑滚动进入视野香草的javascript
button.addEventListener('click',function(){
element.scrollIntoView();
},false);
我怎样才能使它平滑滚动? (无jQuery的,无插件)
目前,我有以下代码滚动到一个div:平滑滚动进入视野香草的javascript
button.addEventListener('click',function(){
element.scrollIntoView();
},false);
我怎样才能使它平滑滚动? (无jQuery的,无插件)
function animate(elem,time) {
if(!elem) return;
var to = elem.offsetTop;
var from = window.scrollY;
var start = new Date().getTime(),
timer = setInterval(function() {
var step = Math.min(1,(new Date().getTime()-start)/time);
window.scrollTo(0,(from+step*(to-from))+1);
if(step == 1){ clearInterval(timer);};
},25);
window.scrollTo(0,(from+1));
}
var divVal = document.getElementById('yourElementID');
animate(divVal,1000);
让我知道如果它帮助!
当我点击按钮时,它不会滚动。 – 2014-09-29 07:45:32
缺乏对此的解释可能会吸引downvotes - 这对于未来寻找答案的人来说也是不利的。有几点意见足以说明这是如何工作的。 – mechalynx 2014-09-29 07:55:18
@NavinRauniyar:在mac浏览器上测试了相同的代码。让我知道你正在测试哪个浏览器。 – 2014-09-29 08:08:20