gpt4 book ai didi

javascript - 使用 jQuery 方法扩展 Zepto.js?滚动顶部()

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:59:53 25 4
gpt4 key购买 nike

我在当前项目中使用 Zepto.js。 Zepto 不支持 jQuery 中的 scrollTop() 方法。

是否有可能扩展 Zepto 以与 scrollTop() 一起工作?

更新:我想要的只是创建我自己的小而简单的“动画滚动”功能,就像我以前使用 jQuery 一样。查看工作示例 here .但是我不知道如何在 Zepto.js 中没有可用的 scrollTop() 函数的情况下使相同的函数工作。

最佳答案

scrollTop 不能使用 Zepto 的 .animate 方法设置动画,因为它使用 CSS 转换。

尝试这样的事情:http://jsfiddle.net/DVDLM/5/

function scroll(scrollTo, time) {
var scrollFrom = parseInt(document.body.scrollTop),
i = 0,
runEvery = 5; // run every 5ms

scrollTo = parseInt(scrollTo);
time /= runEvery;

var interval = setInterval(function () {
i++;

document.body.scrollTop = (scrollTo - scrollFrom) / time * i + scrollFrom;

if (i >= time) {
clearInterval(interval);
}
}, runEvery);
}

$('#trigger').click(function () {
scroll('600px', 500);
});

编辑:我添加了一个 runEvery 变量,它指定间隔运行的频率。此值越低,动画越流畅,但可能会影响性能。

EDIT2:我想我误解了这个问题。这是新问题的答案:

$.zepto.scrollTop = function (pixels) {
this[0].scrollTop = pixels;
};

关于javascript - 使用 jQuery 方法扩展 Zepto.js?滚动顶部(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12200702/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com