Blur()を呼び出すことで閉じられるドロップダウンがあります。ドロップダウン以外の場所をクリックすると、閉じられるはずです。
今、私は関数を追加したいので、他の場所をクリックすると、ドロップダウンは、呼び出されたdivをクリックしない限り閉じられます<div class="changeask"></div>
$(document).ready(function () {
$(document).delegate("*", "mousedown touchend", function (e) {
var target = $(e.target).closest("div.select2-container").get(0), attr;
if (target) {
$(document).find("div.select2-container-active").each(function () {
if (this !== target ) $(this).data("select2").blur();
});
} else {
target = $(e.target).closest("div.select2-drop").get(0);
var changeask = $("div.changeask");
$(document).find("div.select2-drop-active").each(function () {
if (this !== target && this !== changeask) $(this).data("select2").blur();
});
}
これが私が今持っているコードです...私は多くの方法を試しましたが、ドロップダウン以外の場所をクリックすると閉じます。
何か案は?
私はこのようにコードを修正しようとしました:
$(document).ready(function () {
$(document).delegate("*", "mousedown touchend", function (e) {
var target = $(e.target).closest("div.select2-container").get(0), attr;
var changeask = $(e.target).closest('.changeask').length != 0;
if (target) {
$(document).find("div.select2-container-active").each(function () {
if (this !== target && this!== changeask ) $(this).data("select2").blur();
});
} else {
target = $(e.target).closest("div.select2-drop").get(0);
$(document).find("div.select2-drop-active").each(function () {
if (this !== target && this!== changeask) $(this).data("select2").blur();
});
}
しかし、まだ機能しません...助けてくれてありがとう..本当に感謝しています