我訪問這樣的樣式集合:地帶域名
var css = document.styleSheets[0];
它返回如。 http://www.mydomain.com/css/main.css
問題:如何剝離域名才能得到/css/main.css
?
我訪問這樣的樣式集合:地帶域名
var css = document.styleSheets[0];
它返回如。 http://www.mydomain.com/css/main.css
問題:如何剝離域名才能得到/css/main.css
?
css = css.replace('http://www.mydomain.com', '');
如何:
css = document.styleSheets[0];
cssAry = css.split('/');
domain = cssAry[2];
path = '/' + cssAry[3] + '/' + cssAry[4];
這在技術上爲您提供您的域名和路徑。
這個正則表達式應該可以做到。它將替換任何使用空字符串找到的域名。同時還支持https://開頭
//css is currently equal to http://www.mydomain.com/css/main.css
css = css.replace(/https?:\/\/[^\/]+/i, "");
這將返回/css/main.css
簡單和乾淨,爲全局標誌添加使用它像css.replace(/ https?:\/\/[^\ /] +/ig,「」); @ Erikk-ross,請問您可以添加http和全球支持嗎? – 2017-10-10 13:25:52
您可以使用一個小技巧,通過創建一個<a>
- 元素,然後將字符串設置到<a>
- 元素的href,然後你必須一個Location object你可以從中獲取路徑名。
你既可以一個方法添加到字符串原型:
String.prototype.toLocation = function() {
var a = document.createElement('a');
a.href = this;
return a;
};
,並使用它像這樣:
css.toLocation().pathname
或使其成爲一個功能:
function toLocation(url) {
var a = document.createElement('a');
a.href = url;
return a;
};
和使用它是這樣的:
toLocation(css).pathname
這兩個都會輸出:"/css/main.css"
我忘了提及域名應該是可變的 - 所以沒有更換。 – Fuxi 2010-04-08 01:50:02
查看我使用正則表達式的新答案,該答案可與任何域名一起使用。 – 2010-04-08 12:26:05
請停止在標題中寫標籤。你已經在這裏差不多兩年了! – 2011-06-25 17:45:18