2013-03-25 60 views
4

BODY標籤在年底前這是body標籤之前,我希望腳本:將腳本與jQuery

<script type="text/javascript"> 
    var vglnk = { api_url: '//api.viglink.com/api', 
       key: '89dcd0a12ff35d227eaaaff82503030b' }; 

    (function(d, t) { 
    var s = d.createElement(t); s.type = 'text/javascript'; s.async = true; 
    s.src = ('https:' == document.location.protocol ? vglnk.api_url : 
      '//cdn.viglink.com/api') + '/vglnk.js'; 
    var r = d.getElementsByTagName(t)[0]; r.parentNode.insertBefore(s, r); 
    }(document, 'script')); 
</script> 

我想這個代碼是,我已經把「HERE」

<html> 
<head> 
</head> 
<body> 
some html and stuff 
HERE 
</body> 
</html> 

如何在jQuery中進行此操作? (我正在做這個擴展,主要是在Chrome中,還有FF和IE。)

任何幫助表示讚賞。

+1

http://stackoverflow.com/a/5114084/139010 – 2013-03-25 22:47:04

+1

你會如何建議我去在所有頁面上使用這個腳本? – 2013-03-25 22:55:54

+1

經過測試,不起作用。不會讓JS在活動頁面上做它需要做的事情。 – 2013-03-25 23:14:36

回答

3

您需要content script在您想要的每個頁面上進行插入。

內容腳本的代碼非常簡單,不需要jquery。

var code = "your script code here"; 
var script = document.createElement("script"); 
script.setAttribute("type", "text/javascript"); 
script.appendChild(document.createTextNode(code)); 
document.body.appendChild(script); 

因爲它只會被調用一次,你甚至不需要定義一個函數。 您可以在內容腳本附加的任何Web上使用調試器調試代碼(F12),您將在內容腳本選項卡中看到您的代碼。

0

我有關於添加jQuery的最佳位置的相同問題:頭部或身體標記之前?答案是沒關係。

整個頁面(或DOM)需要初始化或加載,以完成您正在做的事情。 AND .. 身體內的信息越多,您就越需要確保文檔已加載。上述

的2句是多餘的,因爲:

所有jQuery用戶界面/基本語法/窗口小部件等被觸發以: $(document).ready(function() { $("#some_id").click(function { MORE CODE HERE }); });

上述代碼指完整的HTML頁面(或「文件')需要在jQuery運行之前加載,也就是初始化。

有一個命令,jQuery需要加載才能工作。實際的圖書館應該是第一個,然後是用戶界面。該庫可以從jquery.com下載並上傳到設計者網絡空間或通過CDN(內容顯示網絡)來節省帶寬。下面是順序應該如何一個例子:

<script src="http://code.jquery.com/jquery-1.6.4.min.js" ></script> <script src="http://code.jquery.com/mobile/1.0/jquery.mobile-1.0.min.js" ></script>

通知該庫的第一行,則該用戶界面中,在這種情況下我裝jquery的移動。

在結論中它並不重要,主要是偏好。更多這裏https://forum.jquery.com/topic/unclear-where-document-ready-goes#14737000004139019