我正在开发jQuery UI Autocomplete插件的扩展程序。
我的代码近似如下:
$.widget( "ui.autocomplete", $.ui.autocomplete, {
options: {
delay: 500,
prefix: ""
},
_renderItem: function( ul, item ) {
var label = item.label;
if ( this.options.prefix ) {
label = this.options.prefix + " " + label;
}
return $( "<li>" )
.append( $( "<a>" ).text( label ) )
.appendTo( ul );
},
});
我想要做的是扩展EVENTS的默认行为,例如“Focus”(例如使用以下代码):
focus: function() {
// prevent value inserted on focus
alert("fire");
return false;
}
当我打电话给我的autocomplete()
时,我正在写作$( "#search" ).autocomplete( { //focus:function() ... })
有办法做到这一点吗?所以,当我写
$( "#search" ).autocomplete()
在窗口小部件中自动使用我预定义的焦点功能吗?
谢谢!
答案 0 :(得分:2)
好的答案就是这么简单。您将“焦点”,“选择”,“打开”视为任何其他选项:
$.widget( "ui.autocomplete", $.ui.autocomplete, {
options: {
delay: 200,
focus: function(event) {
alert("does that");
}
}
});
就是这样!下次你打电话
$( "#search" ).autocomplete()
它将成为焦点!