我有一个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>
答案 0 :(得分:3)
可分两步完成:
1)为#user_interface
设置css,为#javascript_portion
设置display:none
2)为JS中的某个选择器设置display
到block
答案 1 :(得分:0)
您可以使用CSS为您的javascript_portion div添加display:none。然后使用Javascript删除它。这样Javascript部分只会显示javascript是否正常工作。
答案 2 :(得分:0)
如何使用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>
答案 3 :(得分:0)
noscript
标记就像是其他部分;如果你有脚本,请执行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>