前标签我有CMS使用代码美化为语法高亮的网页条件加载JS - 如果在内容
只有10%的代码,并使用预先标记
<pre class="prettyprint">
语法高亮显示。
但prettify.js被装载上的所有网页,并增加了加载时间
是可以根据代码预标签的存在有条件负荷prettify.js?
前标签我有CMS使用代码美化为语法高亮的网页条件加载JS - 如果在内容
只有10%的代码,并使用预先标记
<pre class="prettyprint">
语法高亮显示。
但prettify.js被装载上的所有网页,并增加了加载时间
是可以根据代码预标签的存在有条件负荷prettify.js?
此代码将完成这项工作。检查pre元素是否在范围内。如果是这样,然后将脚本添加到头部。
$(document).ready(function() {
if($('pre').length){
$('head').append('<script src="pretify.js></script>');
});
});
如果您希望基于类而不是html元素来实现,那么您将不得不使用.classname而不是元素名称本身。
$(document).ready(function() {
if($('.prettyclass').length){
$('head').append('<script src="pretify.js></script>');
});
});
这如果添加它下面的所有<pre>
标签和更换<path>
通配符与真实地址就可以了。
<script type="text/javascript">
if (document.querySelectorAll("pre.prettyprint").length > 0) {
var script = document.createElement("script");
script.src = "<path>/prettify.js";
document.head.appendChild(script);
}
</script>
是的,简单。检查是否有class prettyprint,通过附加脚本标签加载脚本手动初始化相纸。 – dfsq