Введение здесь - это, по сути, два метода, создавая DOM или вычисления через JavaScript:
1) Через недавно созданное изображение будет отправлено, и IE6 не поддерживает его. ;
Кода -копия выглядит следующим образом:
функция getabsoluteurl (url) {
var img = новое изображение ();
img.src = url;
url = img.src; // В настоящее время относительный путь стал абсолютным путем
img.src = null;
вернуть URL;
}
getabsoluteurl ("выставочный зал/список");
2) Создайте якорь (ссылка).
Кода -копия выглядит следующим образом:
/ *jslint regexp: True, White: True, Maxerr: 50, отступ: 2 */
Функция parseuri (url) {
var m = string (url) .replace (/^/s+|/s+$/g, '') .match (/^([^: //?]+:)? (//// (?: [^:@]*(? :: [^:@]*)?@)? (([^: //?#]*) (? :: (/d*))?))? ([^ ?#]*) (/? [^#]*)? (#[/s/s]*)?/);
// Authority = '//' + user + ':' + pass '@' + hostname + ':' порт
возврат (m? {
href: m [0] ||
Протокол: M [1] ||
авторитет: M [2] ||.
хозяин: m [3] ||
Имя хоста: M [4] ||
Порт: M [5] ||
Pathname: M [6] ||
Поиск: M [7] ||
Хэш: м [8] ||
} : нулевой);
}
Функция Absoluteuri (base, href) {// rfc 3986
Функция удалена поощрения (вход) {
var output = [];
input.replace (/^(/./.?(// | $))+/, '')
.replace (///(/.(// | $))+/g, '/')
.Replace (////../$/, '/../')
.replace (///? [^//]*/g, function (p) {
if (p === '/..') {
output.pop ();
} еще {
output.push (p);
}
});
return output.join (''). Заменить (/^///, input.charat (0) === '/'? '/': '');
}
href = parseuri (href || '');
base = parseuri (base || '');
Вернуться! Href ||.
(href.protocol || href.authority? href.authority: base.authority) +
удаленные dotsegments (href.protocol || href.authority || href.pathname.charat (0) === '/'? href.pathname: (href.pathname? ((base.authority &&! base.p athname? '/ ':' ') + base.pathname.slice (0, base.pathname.lastindexof ('/') + 1) + href.pathname): base.pathname)) +
(href.protocol || href.authority || href.pathname? href.search: (href.search || base.search)) +
href.hash;
}
Поскольку наши продукты являются мобильными веб -страницами, они больше не поддерживают IE6, а второе решение наконец используется;
Видно, что при доступе к всем изображениям и якорям, используя исходный метод, возвращаемые абсолютные пути - все это в настоящее время, если вы хотите вернуть исходный относительный путь, вы можете использовать метод запроса DOM. jQuery.attr () Метод:
Кода -копия выглядит следующим образом:
// Возвращение абсолютного пути, объект jQuery - это по сути структура «классовая массива» (аналогичная аргументам), поэтому вы можете использовать [0] для доступа к исходному объекту, а затем взять «href»;
console.log ($ Anchor [0] ["href"]);
// Вернуться к исходному пути
console.log ($ anchor.attr ("href"));