3

したがって、javascriptがオンの場合は表示し、オフの場合は非表示にする2つのリンクがあり、javascriptがオフの場合は、その場所にnoscriptタグを使用して他の2つのリンクを表示したいと思います。

私がこれまでに持っているものは次のとおりです。

-js here- js がオンの場合は 2 つのリンクを表示し、無効の場合は非表示にします -js here-

-noscript- リンク 1 リンク 2 -noscript-

私はPHPの経験しかなく、JavaScriptにはあまり慣れていません。

これについて最善の方法は何ですか?表示/非表示機能を機能させるために、何らかのJavaScript関数が必要ですか? しかし、javascript がオフの場合、リンクを非表示にする機能はどのように実行されるのでしょうか?

誰かがこれについて正しい方向に向けたり、簡単なコード スニペットを提供してくれたりすることができれば、本当に感謝しています。ありがとう!

4

3 に答える 3

3
  1. CSS を使用してリンクを非表示にする - デフォルトでは非表示

    <a id="link1" href="#" style="display: none">Script link 1</a>
    <a id="link2" href="#" style="display: none">Script link 2</a>
    
  2. Javascript を使用してリンクを表示 - もちろん Javascript がオンの場合にのみ表示されます

    <script type="text/javascript">
         document.getElementById('link1').style.display="block";
         document.getElementById('link2').style.display="block";
    </script>
    

    必要なものに応じて、他のプロパティを使用できdisplayます (リンクはinlineデフォルトで、blockここに追加しました。必要なものを使用してください)。

  3. ものを追加noscript- Javascript がオフの場合にのみ表示されます

    <noscript>
    -two other links-
    </noscript>
    
于 2012-08-30T22:03:40.467 に答える
3

これが BODY タグの CSS クラスで行われるのをよく見てきました。例えば:

<html>
<head>
  <style type="text/css">
    BODY A { display: none; }
    BODY.script A { display: inherit; }
  </style>
</head>
<body>
    <a href="#">Shows with Script</a>
</body>
</html>

その後、スクリプトを使用できます。

document.body.className = 'script';

JavaScript をサポートするブラウザーの場合、scriptCSS クラスが追加され、BODY.scriptスタイルが使用されます。それ以外の場合は、通常BODYのスタイルが使用されます。

次に、スクリプトを有効にするかどうかに関係なく、ページ上の要素をどのように表示するかを正確に定義できます。同様に、これを逆にして BODY にnoscriptスタイルを与えてから、スクリプトを使用してそれを削除することもできます。

JSFiddle リンク

于 2012-08-30T22:06:32.767 に答える
0

次のように、なしでそれを行うこともできnoscriptます

HTML

<a href="" style="display:none" id='javascript_link1'>JS link-1</a>
<a href="" style="display:none" id='javascript_link2'>JS link-2</a>
<a  href="" id='nonjs_link1'>link-1</a>
<a href="" id='nonjs_link2'>link-2</a>

JS

document.getElementById('javascript_link1').style.display="block";
document.getElementById('javascript_link2').style.display="block";
document.getElementById('nonjs_link1').style.display="none";
document.getElementById('nonjs_link2').style.display="none";​

デモ

于 2012-08-30T22:13:23.130 に答える