マウスがメインdivの子(私がmouseoutイベントをバインドしたもの)に移動すると、mouseoutイベントが呼び出され、それを望まないため、jqueryでmouseoutイベントを再バインドする必要があります。だから私はこれを行います:
$('.div-hidden').live('mouseout', function (event) {
e = event.toElement || event.relatedTarget;
if (e.parentNode.parentNode == this || e == this || e.parentNode == this) {
return;
}
if ($(this).parent().css('overflow') == "visible") {
var parent_height = parseInt($(this).parent().parent().css('height').substr(0, $(this).css('height').length), 10);
$(this).parent().animate({
top: (parent_height - 40) + "px"
}, 500, function () {
$(this).css('overflow', 'hidden');
});
}
});
これは、ie8 / 9およびその他のブラウザーでは正常に機能しますが、ie7では機能しません。また、bind()を使用してlive()を変更しようとしましたが、機能しません。どのようにできるのか?