【发布时间】:2016-06-30 17:30:31
【问题描述】:
我正在使用 mark.js 插件,它允许在页面上搜索文本,它会在您键入时查找文本,如果您按 Enter 键,您将跳转到下一个结果,直到它找到并突出显示所有结果。 唯一的问题是,当它到达最后一个结果时,它会将搜索视为已结束,如果您按 Enter,则无法从第一个结果重新开始搜索。
找到最后一个结果后,我需要能够滚动回第一个结果(就像您使用 Google Chrome 查找框 (Control + F) 搜索内容时发生的情况一样。
[Working Fiddle] 您需要稍微滚动一下小提琴中的结果选项卡,才能看到搜索框。
以下函数负责在结果之间滚动,它会跳转到页面上最后一个(Next)找到的文本:
done: function() {
var mark = $('mark[data-markjs]').last(); // Scroll to last <mark>
if (mark.length) {
$('html,body').animate({scrollTop: mark.offset().top-100}, 100);
}
}
这个负责使用回车键触发上一个功能:
if(e.which==13){ // 13 = enter key
e.preventDefault();
arrowOffset++;
}
提前致谢。
【问题讨论】:
-
有人吗?有那么难吗? =|
标签: javascript jquery jquery-ui mobile jquery-plugins