我正在使用 http://jedfoster.com 的最新版本 (2.2.1) readmore.js并且我的 affterToggle 中的scrollTop 函数仅在我使用小于版本 3.0.0 的 jquery 时才有效。所以 jquery 2.. 和 1.. 工作正常。
我用谷歌搜索,但没有找到关于scrollTop和jquery 3的任何特别之处。
$('#text').readmore({
speed: 75,
moreLink: '<a href="#">read more</a>',
lessLink: '<a href="#">close</a>',
collapsedHeight: 60,
afterToggle: function(trigger, element, expanded) {
if (!expanded) { // The "Close" link was clicked
$('html, body').animate({ scrollTop: $("#top").offset().top }, 100);
}
}
});
https://jsfiddle.net/0djenaxh/5/
将 jquery 版本更改为 1 或 2,它就可以工作了...有人能告诉我为什么这不适用于 jquery 3 吗?
问候
最佳答案
jQuery的scrollTop适用于所有jQuery版本(您可以在此处使用不同的jQuery版本测试scrollTop:http://jsfiddle.net/rdayptu8/3/)
根据您的代码,readmore.js 中的 afterToggle
方法不会在最新版本的 jQuery 中被调用/涉及。肯定是最新的 jQuery 版本不支持 readmore.js 库。
关于javascript - jquery scrolltop 仅适用于 jquery < 3.0.0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53337669/