首先,我知道有搜索建议的jQuery插件。我问这个的原因是因为我为我的特定需求编写了一个,我有兴趣学习如何在jQuery中创建脚本(而不仅仅是使用插件)。看看我粘贴到pastebin的代码 - 我希望没问题。
原文:http://pastebin.com/VFuXY4iX
有点jQuerified:http://pastebin.com/S86ES8bH
我正在努力解决的两件事情如下:
- 原始(以及当前的jQuery)通过其DOM子索引访问子节点(请参阅unhilite()
函数)。我还没有找到在jQuery中执行此操作的方法。我能找到的最接近的是.next("selector")
,但是除了DOM索引之外,元素没有我可以键入的选择器。我想通过做类似的事来克服这个问题:
$('.hilited')
.next('li')
.addClass('hilited')
.end()
.removeClass('hilited');
这会运作良好吗?编辑:即使它运行良好,有没有办法访问这样的DOM索引(以供将来参考)?
- 其次,我不知道具体如何用jQuery绑定键盘事件(不使用插件,我想避免 - 再次出于学习目的)。我认为bind()
或keydown()
可能有用。
$('#target').keydown(function(event) {
if (event.keyCode == '40') {
//next
} else if (event.keyCode == '40') {
//previous
}
)};
有人有什么建议吗?谢谢你,你是我的最爱!
对于任何不熟悉的人来说,PS-sajax_do_call都是Mediawiki AJAX语法...