JQuery自动完成:获取当前关注的<;李>;
当用户将鼠标滑过或突出显示其JQuery自动完成:获取当前关注的<;李>;,jquery,jquery-ui,jquery-autocomplete,jquery-ui-autocomplete,Jquery,Jquery Ui,Jquery Autocomplete,Jquery Ui Autocomplete,当用户将鼠标滑过或突出显示其选项时,JQuery Autocomplete会触发焦点事件。在这个事件中,我想引用当前关注的,但我不知道如何选择它。目前,我有: focus: function( event, ui ) { var target = event.currentTarget alert($(target).html()) } 但这将返回整个列表,而不仅仅是当前关注的列表。我尝试过其他事件方法,例如event.delegateTarget和event.target,但没有成功
选项时,JQuery Autocomplete会触发焦点事件。在这个事件中,我想引用当前关注的
,但我不知道如何选择它。目前,我有:
focus: function( event, ui ) {
var target = event.currentTarget
alert($(target).html())
}
但这将返回整个
列表,而不仅仅是当前关注的列表。我尝试过其他事件方法,例如event.delegateTarget和event.target,但没有成功。是否有其他方法获得焦点元素?您必须:
li
(此li
具有a
类ui状态关注
focus: function (event, ui) {
var menu = $(this).data("uiAutocomplete").menu.element,
focused = menu.find("li:has(a.ui-state-focus)");
// focused is the focused `li`
}
示例:使用以下选项是否有任何缺点
focus: function(event, ui) {
$(".ui-autocomplete li").removeClass("ui-state-hover");
$(".ui-autocomplete").find("li:has(a.ui-state-focus)").addClass("ui-state-hover");
}
请提供一个JSFIDLE示例
console.log(ui)
。它就在那里。@Ohgodwhy:不,不是。这是重点关注的项目,而不是li
。谢谢你,Andrew。这正是我所需要的。我处理这个问题已经有一段时间了,但如果我没记错的话,ui状态重点的问题是它应用于ul
,而不是个性重点