動態(tài)加載圖片路徑 保持JavaScript控件的相對獨立性
更新時間:2010年09月06日 12:07:45 作者:
根據(jù)新界面的要求,需要一部分圖片來增強日期控件的美觀性??紤]到既要實現(xiàn)加載圖表的目標(biāo),又要保持控件的獨立性以便將來的移植。
當(dāng)時考慮有三種方法:
1.直接把路徑寫在js文件里,但如果引用頁面路徑層級改變就沒轍了。
2.寫個class,放在主題包里的css文件或者單獨創(chuàng)建一個css文件給日期控件專用。但是控件中的其他元素并沒有使用class的需要,單獨建立相應(yīng)css文檔似乎小題大做。
3.把以上兩個方法排除后,自然要采用動態(tài)加載圖片路徑的方法咯。
關(guān)鍵代碼如下:
//創(chuàng)建一個全局變量保存路徑
var imgRootUrl = "";
//獲取圖片路徑所在目錄
var strPath=window.document.location.pathname; //獲取主機地址之后的目錄部分
var thisUrlCount = strPath.split('/');
var hierarchyOfFolders = thisUrlCount.length-2;//獲取目錄層級
for(iRoot=0;iRoot<hierarchyOfFolders;iRoot++)
{
imgRootUrl +="../";
}
imgRootUrl +="Images/"; //這個Images其實也可設(shè)為參數(shù),由于所有項目圖片文件夾命名固定,所以沒有設(shè)立參數(shù),但仍然保存可擴展性。
加圖后,控件效果是相當(dāng)美觀了:

順便附上所有window.document.location其下屬性:
document.location.hash // #號后的部分 VS window.location.hash
document.location.host // 域名+端口號
document.location.hostname // 域名
document.location.href // 完整URL
document.location.pathname // 目錄部分(應(yīng)用程序)
document.location.port // 端口號
document.location.protocol // 網(wǎng)絡(luò)協(xié)議(http:)
document.location.search // ?號后的部分
1.直接把路徑寫在js文件里,但如果引用頁面路徑層級改變就沒轍了。
2.寫個class,放在主題包里的css文件或者單獨創(chuàng)建一個css文件給日期控件專用。但是控件中的其他元素并沒有使用class的需要,單獨建立相應(yīng)css文檔似乎小題大做。
3.把以上兩個方法排除后,自然要采用動態(tài)加載圖片路徑的方法咯。
關(guān)鍵代碼如下:
復(fù)制代碼 代碼如下:
//創(chuàng)建一個全局變量保存路徑
var imgRootUrl = "";
//獲取圖片路徑所在目錄
var strPath=window.document.location.pathname; //獲取主機地址之后的目錄部分
var thisUrlCount = strPath.split('/');
var hierarchyOfFolders = thisUrlCount.length-2;//獲取目錄層級
for(iRoot=0;iRoot<hierarchyOfFolders;iRoot++)
{
imgRootUrl +="../";
}
imgRootUrl +="Images/"; //這個Images其實也可設(shè)為參數(shù),由于所有項目圖片文件夾命名固定,所以沒有設(shè)立參數(shù),但仍然保存可擴展性。
加圖后,控件效果是相當(dāng)美觀了:

順便附上所有window.document.location其下屬性:
document.location.hash // #號后的部分 VS window.location.hash
document.location.host // 域名+端口號
document.location.hostname // 域名
document.location.href // 完整URL
document.location.pathname // 目錄部分(應(yīng)用程序)
document.location.port // 端口號
document.location.protocol // 網(wǎng)絡(luò)協(xié)議(http:)
document.location.search // ?號后的部分
相關(guān)文章
JavaScript 函數(shù)節(jié)流詳解及方法總結(jié)
這篇文章主要介紹了JavaScript 函數(shù)節(jié)流詳解及實例的相關(guān)資料,需要的朋友可以參考下2017-02-02
Javascript 數(shù)組去重的方法(四種)詳解及實例代碼
這篇文章主要介紹了Javascript 數(shù)組去重的方法(四種)詳解及實例代碼的相關(guān)資料,這里對四種去重方法進行了詳細介紹,并附代碼實例,需要的朋友可以參考下2016-11-11
JavaScript中調(diào)用函數(shù)的4種方式代碼實例
這篇文章主要介紹了JavaScript中調(diào)用函數(shù)的4種方式代碼實例,本文分別給出方法調(diào)用模式、函數(shù)調(diào)用模式、構(gòu)造器調(diào)用模式、apply調(diào)用模式4種方式的代碼實例,需要的朋友可以參考下2015-07-07

