需要帮助向此 javascript 代码添加自动滚动
Need help adding autoscroll to this javascript code
我正在使用免费的 js 文件对新闻发布页面进行分页。单击分页 link 后它停留在底部,我希望它自动滚动回页面顶部。有人可以告诉我如何添加吗?我尝试添加在其他帖子中发现的各种内容,但显然我不知道自己在做什么,而且没有任何效果。提前致谢。
/*global console, document, $, jQuery */
(function ($) {
'use strict';
function log(d) {
console.log(d);
}
// $(document).ready(function () {
$.fn.pagination = function (options) {
// alert('prout');
var paginationContainer = this,
itemsPerPage,
itemsToPaginate,
defaults,
settings,
i,
numberOfPaginationLinks;
log(paginationContainer);
defaults = {
itemsPerPage: 5
};
settings = {};
$.extend(settings, defaults, options);
itemsPerPage = settings.itemsPerPage;
itemsToPaginate = $(settings.itemsToPaginate);
numberOfPaginationLinks = Math.ceil((itemsToPaginate.length /
itemsPerPage));
log(numberOfPaginationLinks);
// Création de list dans la div ciblée
$('<ul></ul>').prependTo(paginationContainer);
// Boucle qui créer des li
for (i = 0; i < numberOfPaginationLinks; i += 1) {
paginationContainer.find('ul').append('<li>' + (i + 1) +
'</li>');
}
itemsToPaginate.filter(':gt(' + (itemsPerPage - 1) + ')').hide();
paginationContainer.find('ul li').click(function () {
var itemsToHide,
linkNumber,
itemsToShow,
$this = $(this);
$this.addClass(settings.activeClass);
$this.siblings().removeClass(settings.activeClass);
linkNumber = $this.text();
itemsToHide = itemsToPaginate.filter(':lt(' + ((linkNumber - 1) *
itemsPerPage) + ')');
$.merge(itemsToHide, itemsToPaginate.filter(':gt(' + ((linkNumber
* itemsPerPage) - 1) + ')'));
itemsToHide.hide();
itemsToShow = itemsToPaginate.not(itemsToHide);
itemsToShow.show();
});
};
// });
}(jQuery));
我希望每次转到下一页时页面都从顶部开始,但目前它停留在底部。
如果您正在滚动 window:
window.scrollTo(x-coord, y-coord);
例如
window.scrollTo(0, 0);
如果您在溢出的元素内滚动:auto/scroll 这样做:
var e = document.getElementById('containerDiv');
e.scrollTop = 0;
如果将此 css 属性添加到滚动元素,效果会更好
body{
scroll-behavior: smooth;
}
我正在使用免费的 js 文件对新闻发布页面进行分页。单击分页 link 后它停留在底部,我希望它自动滚动回页面顶部。有人可以告诉我如何添加吗?我尝试添加在其他帖子中发现的各种内容,但显然我不知道自己在做什么,而且没有任何效果。提前致谢。
/*global console, document, $, jQuery */
(function ($) {
'use strict';
function log(d) {
console.log(d);
}
// $(document).ready(function () {
$.fn.pagination = function (options) {
// alert('prout');
var paginationContainer = this,
itemsPerPage,
itemsToPaginate,
defaults,
settings,
i,
numberOfPaginationLinks;
log(paginationContainer);
defaults = {
itemsPerPage: 5
};
settings = {};
$.extend(settings, defaults, options);
itemsPerPage = settings.itemsPerPage;
itemsToPaginate = $(settings.itemsToPaginate);
numberOfPaginationLinks = Math.ceil((itemsToPaginate.length /
itemsPerPage));
log(numberOfPaginationLinks);
// Création de list dans la div ciblée
$('<ul></ul>').prependTo(paginationContainer);
// Boucle qui créer des li
for (i = 0; i < numberOfPaginationLinks; i += 1) {
paginationContainer.find('ul').append('<li>' + (i + 1) +
'</li>');
}
itemsToPaginate.filter(':gt(' + (itemsPerPage - 1) + ')').hide();
paginationContainer.find('ul li').click(function () {
var itemsToHide,
linkNumber,
itemsToShow,
$this = $(this);
$this.addClass(settings.activeClass);
$this.siblings().removeClass(settings.activeClass);
linkNumber = $this.text();
itemsToHide = itemsToPaginate.filter(':lt(' + ((linkNumber - 1) *
itemsPerPage) + ')');
$.merge(itemsToHide, itemsToPaginate.filter(':gt(' + ((linkNumber
* itemsPerPage) - 1) + ')'));
itemsToHide.hide();
itemsToShow = itemsToPaginate.not(itemsToHide);
itemsToShow.show();
});
};
// });
}(jQuery));
我希望每次转到下一页时页面都从顶部开始,但目前它停留在底部。
如果您正在滚动 window:
window.scrollTo(x-coord, y-coord);
例如
window.scrollTo(0, 0);
如果您在溢出的元素内滚动:auto/scroll 这样做:
var e = document.getElementById('containerDiv');
e.scrollTop = 0;
如果将此 css 属性添加到滚动元素,效果会更好
body{
scroll-behavior: smooth;
}