Jor*_*rre 7 xhtml xhtml-1.0-strict w3c-validation
对于不支持JavaScript的访问者,我将它们重定向到某个页面 - "js.html".
为此,我在所有文件中都有以下内容:
<noscript>
<meta http-equiv="Refresh" content="0;URL=js.html" />
</noscript>
Run Code Online (Sandbox Code Playgroud)
当然,这不会在XHTML中验证,因为必须放入noscript <body>.但是,当我将该代码放在我的文档正文中时,我得到另一个错误,因为元标记只能在该<head>部分中使用,所以我在这里陷入无限循环.
有没有办法进行验证?它适用于所有浏览器,所以这不是什么大问题,我只是想验证我的应用程序.
2nd*_*boy 12
这是你可以做的:
将元数据插入你的脑袋,但刷新让我们说2秒钟.并且在那个地方旁边有一个删除元刷新的SCRIPT标记.所以任何JS用户都不会被重定向:
<meta id="refresh" http-equiv="Refresh" content="10;URL=js.html" />
<script type="text/javascript">
$('refresh').remove();
</script>
Run Code Online (Sandbox Code Playgroud)
浏览器可能已经"提到"了元刷新.因此,你可以使用JavaScript来编写一个开始和结束的HTML注释(包括一个打开的脚本标记来关闭第二个document.write的脚本标记):
<script type="text/javascript">
document.write("<!-- ");
</script>
<meta http-equiv="Refresh" content="2;URL=js.html" />
<script type="text/javascript">
document.write(' --><script type="text/javascript">');
</script>
Run Code Online (Sandbox Code Playgroud)
我可以成功测试这个.
只是暗示我如何处理非js用户.我有一个名为"js"的css类,我添加到任何应该只对javascript用户可见的元素.通过javascript我添加一个css文件,其中包含类"js"的规则,该规则显示具有"js"类的每个元素.所有链接(功能)都是另外设计的,它们可以在没有javascript的情况下使用,也可以在按住CTRL的同时单击链接的新选项卡中使用.
| 归档时间: |
|
| 查看次数: |
5890 次 |
| 最近记录: |