2012-02-18 42 views
0

私はAJAX/Javascriptの集中型Webページを持っており、<noscript>タグを使用して静的バージョンのサイトを作成しようとしています。Noscript要素が表示されない

問題:<noscript>タグ内要素が現れ、代わりに何を画面上にあることは、元のAJAX/JSサイト(非機能)インターフェースの残っているものではありません。 <noscript>の内容は元のインターフェースのdivの下に隠れているようです。

<noscript>セクション以外のすべてを非表示にするにはどうすればいいですか?<noscript>の内容のみを表示しますか?

HTML構造

<body> 
    <div id="user_interface"></div> 
    <div id="javascript_portion"></div> 
    <noscript> 
     <p>Some static content</p> 
    </noscript> 
</body> 

答えて

3

2つの段階で行うことができます

1)#user_interface#javascript_portionための設定CSS display:noneには

2)は、他に書くことについてどこかJS

どう
+0

それとも 'ディスプレイ置く:独自のスタイルシートでNONE' CSSを、同様に'

は、この(私はjqueryの下に使用)のようなものを試してみてください。そうすれば要素を表示するためにJSは必要ありません。 –

0

あなたは、ディスプレイを追加することができます。あなたのjavascript_portionのDIVにCSSを使用してなし。その後、Javascriptを使用して削除します。そうすれば、Javascriptの部分はjavascriptが動作している場合のみ表示されます。

0

で同じセレクタのためblockdisplayを設定しましたコンテンツはJavascriptで表示されます。

<body> 
    <script type="text/javascript"> 
    document.write('<div id="user_interface"></div>'); 
    document.write('<div id="javascript_portion"></div>'); 
    </script> 
    <noscript> 
    <p>Some static content</p> 
    </noscript> 
</body> 
0

noscriptタグはelseセクションと似ています。あなたがスクリプトを持っているかのように、xxxはnoscriptタグの中のものを実行します。

<body> 
    <div id="withScriptBody" style="display:none"> 
    ... all stuff that requires java script here. 
    </div> 
    <noscript> 
    ... all noscript stuff here 
    </noscript> 
    <script> 
    $(document).ready(function() 
     { 
     $("#withScriptBody").css("display", "block"); 
     }); 
    </script> 
</body> 
関連する問題