0

次のコードは、IE9を除くすべてのCSS3ブラウザーで正常に機能します。誰かがその理由を知っていますか?IDfpdivの大きなdivにクラスdismdivのいくつかのdivを設定しています。各dimsdivエリアの出入り時にアラートボックスを取得する必要があります。しかし、何らかの理由でIE9にはありません。

前もって感謝します!

this.setDimsRoll = function() {
    $("#fpdiv").on({
        mouseenter : function() {
            alert("on")
        },
        mouseleave : function() {
            alert("off");
        }
    }, ".dimsdiv");
}

いくつかの説明。これは、JavaScriptの「クラス」のメソッドであるため、「this」です。その部分は無視してかまいません。これは、dimsdivが動的に作成された後に呼び出されます。そのため、他の投稿の結果としてこの方法を選択しました。

Jquery-動的作成後にイベントを追加する方法

通常はホバーなどを使用しますが、動的オブジェクトを処理するにはこれが必要でした。

4

2 に答える 2

0

要素が動的に作成されるので、ドキュメントオブジェクトのイベントにバインドする必要があると思います。次のようなもの:

this.setDimsRoll = function() {
    $(document).on({ 
        mouseenter: function () { 
            alert("on")
        }, 

        mouseleave: function () { 
            alert("off")
        } 
    }, '.dimsdiv');
}

また、サイドノートでは、コンテキストが少し混同されているように見えます。マウスイベントを実際にバインドしようとしている要素はどれ.dimsdivですか#fpdiv

于 2012-10-18T22:15:45.947 に答える
0

解決策は、divを明確なピクセルで埋めることでした。空のdivはIEで検出されないことが判明しました。マイクロソフトに感謝します!

于 2012-10-25T04:34:52.753 に答える