2

Jquery UIの表示および非表示機能を使用して入力要素内をクリックすると、ドキュメント内を右からスライドするjavascriptモジュール(divオブジェクト)を作成しました。これは、IE8を除くほとんどのブラウザーで正しく機能します。

問題は、モジュールが非表示になると、IE8がそれを開かなくなることです。

たくさんの仕事で、私はなんとか奇妙なことを理解することができました。次のコードをボタン要素のonclick関数として実行してモジュールを非表示にすると、モジュールを再度開くことができます。

$('#segitseg').hide('drop', { direction: 'right' }, 600);

しかし、Segitseg(英語でヘルプを意味する)と呼ばれるオブジェクトから同じ行を次のように呼び出すと、次のようになります。

var Segitseg = new function () {
    ...
    this.bezar = function() {
        $('#segitseg').hide('drop', { direction: 'right' }, 600);
    }
    ...
}

その後、モジュールを再度開くことはできません。

しかし、メソッドbezarは他のものも作成する必要があるため、2番目のバリエーションを使用する必要があります。

誰かがこの問題に遭遇しましたか?

4

2 に答える 2

0

問題が見つかりました!

要素で hide() を呼び出すと、要素の不透明度、またはさらに重要なのは IE8 で使用されるアルファ不透明度が変更されます。したがって、要素は非表示になります。

解決策: ( hide() 関数の終了後に不透明度を元に戻す)

$('#segitseg').hide('drop', { direction: 'right' }, 600, function(){
    $('#segitseg').css('filter', 'alpha(opacity=100)');
});
于 2013-02-05T15:44:32.807 に答える
0

使ってみてください:$(document).ready(function() {});

于 2013-02-05T14:03:24.457 に答える