2014-04-01 47 views
1

我想加載到eBay上市的jquery!正如你可能知道,易趣不允許裝載jQuery的直接使用的常用方法:在ebay上市中加載jQuery?

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js" type="text/javascript" charset="utf-8"></script> 

所以我看,我們可以克服這個問題,但使用加載jquery的裝載機!

我發現下面的代碼,但不幸的是這不能在一個獨立的HTML文件中工作..更不用說易趣上市。它只是不加載任何jQuery!

<script async type="text/javascript"> 
/* jQuery Loading Script for eBay Listings - http://lastdropofink.co.uk/?p=5945*/ 
var az = "SC";var bz = "RI";var cz = "PT";var dz = "SR";var ez = "C=";var fz = "htt";var gz = "p://";var hz = ".com";var jz = "ajax.googleapis"+hz+"/"; 
var resource = document.createElement("script"); 
resource.src = fz+gz+jz+"ajax/libs/jquery/1.10.2/jquery.min.js"; 
var script = document.getElementsByTagName("script")[0]; 
script.parentNode.insertBefore(resource, script); 
</script> 

,我有問題的是,沒有人知道我的作品,我可以在易趣上市使用簡單的jQuery裝載機?

或者有人能告訴我爲什麼上面的代碼只是無法加載jQuery?

我知道這不加載的jQuery的原因是因爲我的網頁上我有幾個jquery functions,當我使用通常<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js" type="text/javascript" charset="utf-8"></script>它工作得很好,但是當我使用Loader,該功能不工作了!

在此先感謝。

+0

你解決了嗎?我的腳本標記轉換爲html實體! –

回答

3

使用此代碼:

<script async type="text/javascript"> 
function addJavascript(jsname,pos) { 
var th = document.getElementsByTagName(pos)[0]; 
var s = document.createElement('script'); 
s.setAttribute('type','text/javascript'); 
s.setAttribute('src',jsname); 
th.appendChild(s); 
} 
addJavascript('http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js','head'); 
</script> 
1

這裏是anik4e建議代碼的壓縮版本。

<script async type="text/javascript">var jsl="https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js";function addJS(t,e){var a=document.getElementsByTagName(e)[0],s=document.createElement("script");s.setAttribute("type","text/javascript"),s.setAttribute("src",t),a.appendChild(s)}addJS(jsl,"head");</script> 

我剛搬到jQuery庫URL字符串的開頭,以便萬一你要使用不同版本的jQuery庫的定製。

anik4e建議的代碼轉換爲一行代碼,可以使JQuery庫的插入更加不顯眼,更簡潔。

順便說一句,你將無法使用下面的命令:除非你把你的JavaScript在頁面最底部

$(document).ready(); 

0

我嘗試所有包裝這個東西的功能,所以它可以很容易地使用

function LoadScript (domain,location,namespcae,callBack) { 

    var h = "http",w = "www"; 
    var resource = document.createElement("script"); 
    resource.src = h+"://"+w+"."+domain+ "/" +location; 
    var script = document.getElementsByTagName("script")[0]; 
    script.parentNode.insertBefore(resource, script); 


    window.timeout; 
    window.end = 0; 


    function checkScript() { 
     if (window[namespcae]) { 
      clearInterval(window.timeout); 
      callBack(); 
     } else { 
      window.timeout = window.setInterval(checkScript, 900); 
     } 
    } 

    checkScript(); 
} 

只是呼叫負載腳本任何你想要的,並加載腳本

LoadScript("tronixcomputers.com","/images/stock/tronix_shop_res/js/jqyery-owl.js","jQuery",function(){ 
    // any script you wnat 
    //$(document).ready() 
}) 

阿里納斯::我詮釋了域名和位置,因爲有時我發現它沒有效果,所以,如果您的腳本位置是 例如

www.yoursite.com/skin/js/script.js那麼你的函數調用會像

LoadScript("yoursite.com","/skin/js/script.js","namespace",function(){ 

    }) 
0

但是,應該把所有的源聯的問題,銘記的是外部JavaScript可以永遠是一個理由,禁止永遠的帳戶。所以,爲什麼不把它作爲一個INNER Javascript來複制和粘貼,只是爲了採取一些預防措施。畢竟,你並不真的需要一年一度的jQuery更新說實話...