0

私は次のスクリプトを持っています:

$(document).ready(function() {

$('*:lang(English)').hide();
$('*:lang(French)').hide();
});

必要なのは、属性lang="English"またはlang="French"を持つすべての要素を最初に非表示にすることです。

しかし今、私が自分のウェブサイトをロードすると、グリッチが発生します。$(document).readyが十分に「準備完了」になる前にhtmlのレンダリングが開始されるためです。したがって、結果として、上記で指定された属性を持つすべての要素が一瞬表示されます。

ドキュメントの準備が整う前にハンドラーを配置して、*:lang(English)グリッチが発生しないようにする方法はありますか?

4

1 に答える 1

2

おそらくjQueryを削除し、CSSでこれを行う必要があります。

*:lang(en), *:lang(fr) {
    display: none;
}

次に、たとえば1つの言語のみを表示する場合は、jQueryを使用します。

$(document).ready(function() {
    $('*:lang(fr)').show();
});
于 2013-03-15T02:56:28.773 に答える