我想创建一个动画来在单击锚链接时平滑地滚动页面,就像jQuery.ScrollTo插件(http://demos.flesler.com/jquery/scrollTo/)一样。
我尝试使用YUI 2.x动画实用程序来制作动画,方法是设置属性document.activeElement.scrollTop
的值。它仅适用于webkit:'(-在其他浏览器上,什么也没有发生-甚至不会引发错误。
goToAnchor = function(e, id) {
var targetToGo = Dom.get(id),
scrollToTarget = new Animation(document.activeElement,
{
scrollTop:
{
from: document.activeElement.scrollTop,
to: targetToGo.offsetTop
}
}, 1, Easing.easeOut
)
Event.preventDefault(e);
scrollToTarget.animate();
}
我想知道的是,是否有一个插件可以针对YUI 2.x执行此操作,或者如何执行与跨浏览器兼容的代码来执行此操作。
谢谢!
最佳答案
您需要记住,根据浏览器的不同,可能需要滚动html
或body
元素。
(实际上,您需要同时滚动两者以确保)
我也在http://developer.yahoo.com/yui/animation/#scroll看到
var element = document.getElementById('test');
var myAnim = new YAHOO.util.Scroll(element, {
scroll: {
to: [ 500, test.scrollTop ]
}
});
myAnim.animate();
也许这就是您想要的(仍然需要为
html
和body
设置动画)关于javascript - 是否有一个等效于jQuery scrollTo的YUI 2.x?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13232780/