4

ボタンのあるシンプルなページ:

<button id="MyButton">Hello</button>

問題は:

  • Javascriptが無効になっているかどうかを表示するボタンが必要です
  • Javascript が有効になっている場合、ボタンを非表示にする必要があります

簡単な Jquery:

$('#MyButton').hide();

ボタンが「ちらつく」ので十分ではありません。ロードしてから非表示になり、非常に目立ちます。

これを機能させるために私が見つけた1つの方法は、JSを使用して直後に非表示にすることです。

<button id="MyButton">Hello</button>
<script>
    document.getElementById('MyButton').style.visibility = 'hidden';
</script>

これは少し見苦しく、いくつかの適切な標準規則に違反しているように見えます。これが、ちらつき効果なしでボタンを非表示にする唯一の方法ですか?

4

4 に答える 4

14

noscriptタグの仕事のようですね!

<noscript>
    <button id="MyButton">Hello</button>
</noscript>
于 2012-05-02T15:11:19.353 に答える
10
<noscript>
    <button id="MyButton">Hello</button>
</noscript>

HTML NoScript 要素 () は、ページのスクリプト タイプがサポートされていない場合、またはブラウザでスクリプトが現在オフになっている場合に挿入される html のセクションを定義します。

MDN

于 2012-05-02T15:11:36.707 に答える
2

no-js クラスを使用します。

<button id="MyButton" class="no-js">Hello</button>

そのクラスを定義して、要素を非表示にします。

.no-js { display: none; }

次に、ready ハンドラーで no-js クラスを削除します。javascript が有効になっていない場合はそのまま残ります。

于 2012-05-02T15:11:21.033 に答える