在facebook中,我们可以使用“J”和“K”键来浏览帖子,我想要一个jQuery插件为我的网站做同样的事情。我的逻辑是我将帖子的标题命名为1,2,3,4 ...并且在按下“J”或“K”键时,它将自动滚动到相应的命名标题。我无法编码。我需要一个插件。我试图谷歌它,但不能用词来表示搜索。任何帮助都提前感谢。谢谢!
答案 0 :(得分:1)
如果你真的想要一些扩展程序,那么最接近你所做的扩展名听起来像this或this。
编辑:或者PageScroller。
但是如果你不介意做一点编码,那么JQuery可以提供你需要的大部分内容,你可以编写自己的扩展。类似的东西:
$(document).on('keypress', function(ev)
{
if (ev.which == '106')
{
$('html,body').scrollTop($("#nextPost").offset().top);
} else if (ev.which == '107')
{
$('html,body').scrollTop($("#prevPost").offset().top);
}
});
更短的版本:
$(document).on('keypress',function(e)
{
id = (e.which == '106') ? getNextPost() :
(e.which == '107') ? getPrevPost() : undefined;
if (id) $('html,body').scrollTop($(id).offset().top);
}
您可以将#nextPost和#prevPost替换为跟踪哪个帖子是"活跃的功能。"我经常通过定义微小的实用程序扩展来启动我的js文件,如:
$.extend({
postRegister : {
registry : '#defaultInitiallyActivePost',
next : function() {
this.registry = $(this.registry).next('.post').attr('id');
return this.registry;
},
prev : function() {
this.registry = $(this.registry).prev('.post').attr('id');
return this.registry;
}
}
});
编辑:如果您希望页面检测用户何时手动滚动到其他帖子,您只需添加一个功能来检查滚动条当前的位置,循环浏览页面上的post元素,检查它们的偏移量确定正在查看哪个帖子。
答案 1 :(得分:0)
我会使用某些DOM元素作为跳跃点来代替数字。除此之外,它应该易于实施。听取键盘事件并使用scrollTo()和position()来做魔术。
看看http://firedev.com/jquery.keynav/。我想你可以改变触发键。
或google https://www.google.com/search?q=jquery+keyboard+navigation+plugin&ie=utf-8&oe=utf-8
答案 2 :(得分:0)
不知道你在追求什么,我的keynavigator plugin可能会帮助你。 你能告诉我们一些代码或你所追求的例子吗?