2012-10-25 24 views
0

正如標題所說,我有一些JavaScript文件。有些部分會呼叫幾個網站。我希望能夠將網站存儲在不同的文件中,這樣,如果網站發生變化,我們只需要進行一次更改,而不是很多。多個Javascript文件,我想把URL常量轉換成單獨的文件

有什麼建議嗎?

我試圖做類似

/** 
* Returns URLs 
*/ 
var URLCONTEXT = "/root-url/context/"; 
var URLROOT = "/root-url/"; 

function getContextUrl(){ 
    return URLCONTEXT; 
} 

function getRootUrl(){ 
    return URLROOT; 
} 

,但是這並沒有辦法與其他JS文件進行溝通= /函數的定義之外

+0

你如何包含這些文件? –

+0

一旦所有的JS文件被加載,他們都能夠看到對方。 –

+0

這是整個文件,還是在類或函數中?如果您在全局上下文中聲明URLCONTEXT和URLROOT變量,則它們可用於所有其他腳本。 – GarethL

回答

1

中包括一個js文件您的網址常數像

url-constants.js 

var URLCONTEXT = "/root-url/context/"; 
var URLROOT = "/root-url/"; 

和參考這個js先於其他js文件第一個文件。

你可以在任何其他js文件中使用url-constants變量。

other.js 

function getContextUrl(){ 
    return URLCONTEXT; 
} 

function getRootUrl(){ 
    return URLROOT; 
} 

包括這些在你的頁面一樣

<script language="text/javascript" src="url-constants.js"></script> 
<script language="text/javascript" src="other.js"></script> 
+0

是的,這工作。我想我沒有足夠高。它沒有工作,直到我把它放在jquery.js腳本之上... – envinyater

0

VAR的,並使用一個名稱定義的函數位於全局命名空間中。只要首先加載這個JS文件,就可以從其他JS文件訪問它們。

0

你應該能夠做到這一點。只要確保包含網址的文件包含之前的即可訪問它的文件。

此外,我不會推薦用這些污染全球範圍,即使您用大寫字母命名它們。如何定義

var URLS = { 
    urlContext: '/root-url/context', 
    urlRoot: '/root-url' 
}; 

並在URLS.urlContext和URLS.urlRoot的其他文件中使用它們?

相關問題