我開始一個項目,需要創建一個外部JavaScript代碼供用戶輸入到他們的網站(就像他們使用Google Analytics代碼片段一樣)。我通過JQuery瞭解了一點javascript,但我不知道該如何開始。如何爲Google Analytics(分析)JS代碼等用戶創建外部JavaScript代碼?
我很緊張我使用錯誤的術語來找到我要找的東西。
我開始一個項目,需要創建一個外部JavaScript代碼供用戶輸入到他們的網站(就像他們使用Google Analytics代碼片段一樣)。我通過JQuery瞭解了一點javascript,但我不知道該如何開始。如何爲Google Analytics(分析)JS代碼等用戶創建外部JavaScript代碼?
我很緊張我使用錯誤的術語來找到我要找的東西。
從技術的角度來看,這與在自己的網站中包含靜態JS文件 - 通過使用腳本標籤完成相同。唯一的區別是您的JS文件的源代碼位於與您的網站不同的域中。
至於JS文件的實際內容,因爲你的問題太斜,所以很難給出建議。我可以建議的唯一的事情就是
1)你可以不依賴於網站,包括任何依賴庫,如jQuery
2)污染儘可能少的全局命名空間。理想情況下,它只會是全局命名空間中的一個單一對象,並且所有代碼都在下面。
只需向他們提供一個js文件以包含在他們的頭文件中。一定不要修改全球scop,因爲你不知道他們在做什麼。通常,這是使用封閉保證:
(function(){
// Put your code here
window.yourLibName = someObject;
})();
他們可以在全球範圍內使用的唯一的代碼是yourLibName,一切SI保持你的colsure內。
然後,您可以爲他們提供一個代碼示例,以從他們的網頁調用您的工具。例如:
<script type="text/javascript"><!--
yourLibName(someParameters);
//-->
</script>
此方法將導致某些內容在大多數網站上變得乾淨可用。
此外,避免在這樣的解決方案中使用像jQuery這樣的庫,因爲它可能會弄亂客戶端的javascript,特別是如果他使用不同版本的jQuery或其他庫如mootoools。
一些基本原則
使你的代碼儘可能小。
不要依賴像Jquery這樣的庫。它會輕易地在第三方網站上發生衝突。
使你的腳本負荷異步
留下一些接口以便其他人可以做某事。自定義設置您的代碼。
不要添加太多的全局變量。嘗試使用命名空間來編寫代碼。