Это сценарий:
Я разрабатываю выпадающий виджет в Jquery. Я должен сказать, что это было просто.
Основная проблема заключалась в том, чтобы поймать, когда пользователь щелкает вне моего виджета, чтобы он скрывал свой список. Я нашел этот код здесь:
onClickOutside : function(event, e){
var thisObject = this;
var clickedOutside = true;
// check if the object itself or its parents are seoDropDown ones.
$(e).parents().andSelf().each(function () {
if (this == thisObject) {
clickedOutside = false;
return false;
}
});
if (clickedOutside) {
//hide my widget
}
},
и работает нормально; Я связываю это с моим объектом, как
myWidget.bind("onClickOutside", myWidget.onClickOutside);
, а затем вызвать его с помощью
$(document).click(function (e) {
$(myWidget).trigger('onClickOutside', [e.target]);
});
Все работает отлично, КРОМЕ, если я щелкну фильм SWF внутри тега вставки в IE.
Я почти уверен, что SWF в IE может посылать некоторые сообщения в javascript, потому что меню YUI способно идеально скрываться, даже если внешний щелчок был сделан над объектом swf, так что ...... кто-нибудь знает, как меню YUI Виджет способен «прослушивать» клики внутри SWFs в IE?
Спасибо!