0

次の関数を使用して、ブラウザーの動作中に読み込み中の画像を含む div を表示および非表示にしています。Firefox では問題なく動作します。Chrome では、これは行われません。マウスがその上になくても、関数呼び出しを開始するボタンが「クリックされた」状態で、画面は静的なままです。開発者ツールを使用してブレークポイントを設定すると、setVisibility() 関数が呼び出され、ローダー div が適切に表示および非表示になることがわかります。

関数は次のようになります。

    function setVisibility(id, visibility) {
        if(document.getElementById(id)){
            document.getElementById(id).style.display = visibility;
        }
    }

show/hide 呼び出しの例を次に示します。

    setVisibility("loader", "inline");
    setVisibility("loader", 'none');

何か案は?

4

2 に答える 2

0

あなたがjqueryについてよく知っているかどうかはわかりませんが、最新のjqueryを含めて.show()および.hide()メソッドを使用します...

http://docs.jquery.com/Show

n/m この一口、あなたはディスプレイを使用しています。

于 2011-09-06T20:59:52.677 に答える
0

これが役立つことを願っています

私は同じ問題を抱えていて、それがどのように起こっているのか本当にわかりませんが、次のようなコードの小さな遅延を使用して修正できます.

このコードで機能を置き換えます

function setVisibility(id, visibility) {
        if(document.getElementById(id)){
            setTimeout(function(){
               document.getElementById(id).style.display = visibility;
            }, 1);
             // please note i have added a delay of 1 millisecond with js timeout function which runs almost same as code with no delay.

        }
    }
于 2015-11-15T09:24:51.303 に答える