私は同様の状況にあり、他の問題により datepicker が親の mouseleave をトリガーできませんが、その解決策は jQuery UI オートコンプリートには適用されないようです。
オートコンプリートの子にもホバーをどのように適用できますか? つまり、mouseenter
オートコンプリートの提案が表示されている場合は、#hoverMe
開いたままにする必要があります。select
また、外にある選択を処理する方法に関する提案/コードは、元に戻るまで表示された#hoverMe
ままになります!#hoverMe
mouseenter
html
<div id="hoverAnchor">hover me</div>
<div id="hoverMe" style="display:none">arbitrary text
<input type="text" id="autocompletor"></div>
</div>
js
$(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"
];
$("#autocompletor").autocomplete({
source: availableTags
});
var _enter = false;
$("#hoverAnchor").add($("#hoverMe")).mouseenter(function () {
if (!_enter) {
$("#hoverMe").stop(true, false).animate({
height: 'toggle',
opacity: 'toggle'
}, 200);
}
_enter = true;
}).mouseleave(function () {
_enter = false;
$("#hoverMe").stop(true, false).animate({
height: 'toggle',
opacity: 'toggle'
}, 200);
});
});