不显示标记元素

问题描述:

我有一个AJAX/Javascript密集网页,并且正在尝试使用<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> 

可以分两步完成:

1)#user_interface#javascript_portion组CSS来display:none

2)设置displayblock为同一选择在JS

+0

或者只是把'显示:在其自己的样式表none' CSS和换行样式表中''

您可以添加显示:无使用CSS你javascript_portion股利。然后使用Javascript删除它。这种方式的JavaScript部分将只显示如果JavaScript正在工作。

地方如何写其他带有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> 

noscript标记就像一个else部分;如果您有脚本,请在xxx中执行noscript标记中的内容。

尝试是这样的(我使用jquery以下):

<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>