在来自https://github.com/aehlke/tag-it的插件 tag-it (演示 - http://aehlke.github.com/tag-it/examples.html)中,如何添加自动对焦(即,如果设置为 true,则显示菜单时第一项将自动聚焦) jquery - tag-it.js 中的功能?
编辑:该功能还应该能够在按下“回车键”时输入或使建议出现在输入框中。
在来自https://github.com/aehlke/tag-it的插件 tag-it (演示 - http://aehlke.github.com/tag-it/examples.html)中,如何添加自动对焦(即,如果设置为 true,则显示菜单时第一项将自动聚焦) jquery - tag-it.js 中的功能?
编辑:该功能还应该能够在按下“回车键”时输入或使建议出现在输入框中。
通过在 tag-it.js 文件中进行以下一些操作,我能够解决输入自动聚焦建议的问题:
在第 113 行定义了一个变量,用于接收重点建议的值var that = this;
:
var that = this;
var focuse;
在第 279 行和函数 - 上或之后this.tagInput.keydown(function(event) {})
,必须添加以下内容:
.on( "autocompletefocus", function( event, ui ) {
focuse = ui.item.value;
})
然后最后在函数内this.tagInput.keydown(function(event) {})
,替换that.createTag(that._cleanedInput());
为:
if (focuse !== '' && event.which === $.ui.keyCode.ENTER)
{
that.createTag(focuse);
focuse = '';
}
else
{
that.createTag(that._cleanedInput());
}
要启用自动对焦,请autocomplete: {autoFocus: true}
在调用 tagit 插件的文件中添加自动完成 ( ) 选项:
$("#tags").tagit({
availableTags : availableTags,
autocomplete: {autoFocus: true}
});
这是一个例子:http: //jsfiddle.net/UQTY2/8/
我希望这是你所期待的
$(document).ready(function(){
var availableTags = [
"ActionScript",
"AppleScript",
"Asp",
"BASIC",
"C",
"C++",
"Clojure",
"COBOL",
"ColdFusion",
"Erlang",
"Fortran",
"Groovy",
"Haskell",
"Java",
"JavaScript",
"Lisp",
"Perl",
"PHP",
"Python",
"Ruby",
"Scala",
"Scheme"
];
$("#tags").tagit({
availableTags : availableTags,
showAutocompleteOnFocus : true,
autocomplete: {delay: 0, minLength: 0, autoFocus: true},
});
});