如果存在<pre class="prettyprint">
,我只加載腳本。我發現要啓動美化,您需要使用prettyPrint();
。如何檢查是否加載了美化
但是,在不加載腳本的頁面上,出現Javascript錯誤。有沒有一種方法來測試是否加載了Prettify,然後運行...否則什麼都不做?
如果存在<pre class="prettyprint">
,我只加載腳本。我發現要啓動美化,您需要使用prettyPrint();
。如何檢查是否加載了美化
但是,在不加載腳本的頁面上,出現Javascript錯誤。有沒有一種方法來測試是否加載了Prettify,然後運行...否則什麼都不做?
可以測試它像這樣:
if (window.prettyPrint) {
prettyPrint();
}
謝謝。比我使用的if(typeof prettyPrint =='function')解決方案更短。 – gavsiu 2013-03-07 05:48:21
@gavsiu好吧,你的更好。 – 2013-08-12 07:02:05
這應該工作
function getElementsByClassName(className) {
if (document.getElementsByClassName) {
return document.getElementsByClassName(className); }
else { return document.querySelectorAll('.' + className); } }
window.onload = function() {
if (getElementsByClassName('prettyprint').length) {
/* element exists */
} else { /* element not exists */ }
}
[編輯]哎呀,你要的功能在所有腦幹,我的壞:)
你不需要再撥打prettyPrint
。
https://code.google.com/p/google-code-prettify/wiki/GettingStarted說
自動裝載機
您可以通過一個URL
<script src="https://google-code-prettify.googlecode.com/svn/loader/run_prettify.js"></script>
加載JavaScript和CSS美化將加載整個系統並安排prettifier上運行頁面加載。您可以指定各種附加選項(作爲CGI參數)來配置跑步者。
...
加載run_prettify.js的自託管版本時,它會從Google代碼調用css文件,而不是從我自己的服務器調用。我不想依賴備用服務器,除非我可以使其與本地備份一起工作。 – gavsiu 2013-03-07 06:42:12
更新:AS-今日(見註釋日期)需要這個版本:'PR.prettyPrint()'重新運行。 – 2015-06-17 10:33:09