3

在来自https://github.com/aehlke/tag-it的插件 tag-it (演示 - http://aehlke.github.com/tag-it/examples.html)中,如何添加自动对焦(即,如果设置为 true,则显示菜单时第一项将自动聚焦) jquery - tag-it.js 中的功能?

编辑:该功能还应该能够在按下“回车键”时输入或使建议出现在输入框中。

4

2 回答 2

1

通过在 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}
});
于 2013-02-15T19:22:20.393 回答
0

这是一个例子: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},
});
});
于 2013-02-10T10:45:36.743 回答