我已经有了以下JS文件:
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js"></script>
<script type="text/javascript">!window.jQuery && document.write(unescape("%3Cscript src='/app_shared/script/jquery-1.6.1.min.js' type='text/javascript'%3E%3C/script%3E"))</script>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.14/jquery-ui.min.js"></script>
<script type="text/javascript">!window.jQuery.ui && document.write(unescape("%3Cscript src='/app_shared/script/jquery-ui.min.js' type='text/javascript'%3E%3C/script%3E"))</script>
我怎么能为一个主题选择类似的东西?我可以这样从cdn下载:
<link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.14/themes/base/jquery-ui.css" rel="stylesheet" type="text/css"/>
但是,我如何检测文件是否已下载,以在失败时引用本地副本?我知道如何用jQuery编程添加本地副本,但我不知道如何检查CSS下载是否成功。此外,<link>
标签下载是否被阻止,或者它们是异步的?那也是个问题。
您可以在字体应该是特定家族的地方进行样式检查,然后根据该家族名称进行检查。如果名称不是您期望的名称,则加载本地副本。
您也可以尝试使用Javascript/jQuery 从外部样式表中获取CSS值
<style>
p {color: blue}
</style>
$(document).ready(function() {
var $p = $("<p></p>").hide().appendTo("body");
alert($p.css("color"));
$p.remove();
});