2014-03-07 249 views
1

如果可能检测CSS检测浏览器支持javascript? 或设置其他CSS媒体查询浏览器不支持JavaScript?CSS检测浏览器支持javascript

+0

所有浏览器都支持JS。你是否要检测它是否关闭? –

+0

如果js打开,css独自检测不到。您需要使用同样的js – fcalderan

+1

或者Modernizr.js –

回答

0

常用的方法是将一个名为no-js的类添加到您的例如

<head class='no-js'> 

然后作为您的第一行JS,删除类。

为了简单起见,在jQuery中你会接着写:

$("head").removeClass("no-js"); 

如果使用的是普通的JS,你需要解析类属性,只删除无JS位,否则,如果您稍后再添加一些课程,你会用一种天真的方法将它们抹去。

然后,您可以编写CSS,如:

.message { 
    display:none; 
} 

.no-js .message { 
    display:block; 
} 

如果你想与类消息的元素只显示给人以JS禁用。

1

你可以做到这一点没有JavaScript。你必须使用... HTML!

有该标签:noscript

摘要

的HTML <noscript>元素定义的HTML的部分被插入,如果页面上的脚本类型不受支持或者如果脚本目前在浏览器中关闭。

<noscript> 
    <!-- this content will be display if no js --> 
</noscript> 

在你的情况,我想你会需要的东西是这样的:

<noscript> 
    <link rel="stylesheet" type="text/css" href="css/nojs.css" /> 
</noscript> 
,如果你想了解它的详细信息

this topic on SO是相当不错的。