我使用以下脚本滚动到博客中的评论部分,如果没有评论部分滚动顶部而不是“回复”这是一个空的评论框:
jQuery(document).ready(function(){
// Set up the onClick() event
jQuery('.comments-link').click(scrollToComments);
// If the page is page.php#comments scroll to the comments/response
if (location.hash=='#comments') scrollToComments();
});
// This function handles the scrolling on page load and onclick
function scrollToComments(){
var comments = jQuery('#comments');
// this can be moved outside the function, or recalculate in case the page redraws
var scrollTopPosition = (comments.length==0)?
jQuery('#respond').offset().top :
comments.offset().top;
jQuery('html, body').animate({scrollTop:scrollTopPosition}, 2000, 'swing');
return false;
}
我现在也想滚动浏览个人评论,这些评论在博客上设置了ID结构“#comment-%”,例如“#comment-22”。
是否有可能以某种方式在jquery中执行此操作?
答案 0 :(得分:0)
这些是你需要做的事情。
将location.hash
与模式匹配,而不是文本来处理单个注释结构。您可以使用正则表达式来实现此功能,或使用简单的.startWith()
替代方法。
重构scrollToComments()
以接收选择器而不是硬编码。
如有必要,请使用Attribute Starts With Selector [name^="value"]
以匹配各个评论。仅在您想要将它们绑定到事件时才需要。不是真的需要。