Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 14.03.2009, 15:09
Интересующийся
Отправить личное сообщение для Lexi Посмотреть профиль Найти все сообщения от Lexi
 
Регистрация: 14.03.2009
Сообщений: 29

Как получить полную ссылку из относительной, с учётом базы
Обычным решением вопроса является подобное (может использоваться img, для поддержки IE6):
Код:
var qualifyURL=function(url){
	var a=document.createElement('a');
	a.href=url;
	return a.href;
};
Но мне требуется независимо задавать базу, относительно которой считаются ссылки.
Гугль находит только решения вродеэтого, размер которых как-то не вдохновляет.
Может быть есть что-то попроще?
Ответить с цитированием
  #2 (permalink)  
Старый 14.03.2009, 15:26
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

вам нужно, чтобы возвращалась ссылка в зависимости от двух параметров:,базового адреса(относительно которого задается) и относительного?
и в чем же проблема?
если относительный адрес начинается со слеша, то приклеиваем относительный адрес к домену базового.
если нет, то просто склеиваем.
или я неправильно понял вашу задачу?
PS по моему у найденного вами решения вполне приемлимый вид.
если вам не нужны все варианты чклейки(например начианющихся с точки), то удалите соответствующий блок.
еще можете написать очень сложную регулярку, которая будет занимать строчку-две, и выполнять все то же, что и то решение
Ответить с цитированием
  #3 (permalink)  
Старый 14.03.2009, 16:16
Интересующийся
Отправить личное сообщение для Lexi Посмотреть профиль Найти все сообщения от Lexi
 
Регистрация: 14.03.2009
Сообщений: 29

Поняли верно. Но хотелось бы иметь универсальное решение и при этом не изобретать велосипед. Самостоятельная обработка всех вариантов сильно на это смахивает
Но, если нет других решений, то придётся так.
Ответить с цитированием
  #4 (permalink)  
Старый 14.03.2009, 16:45
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

если хотите, чтобы у вас было что-то по типу вашего кода, то попробуйте такое:
создайте динамически iframe с вашим базовым адресом.
и относитлеьно него проводите создание ссылки и прочее.
только с вероятностью 99.9% браузер вам этого не даст сделать, так как это противоречит политике безопасности
Ответить с цитированием
  #5 (permalink)  
Старый 14.03.2009, 18:15
Отправить личное сообщение для Андрей Параничев Посмотреть профиль Найти все сообщения от Андрей Параничев
 
Регистрация: 21.02.2008
Сообщений: 1,250

Lexi,
А в какой задаче вам нужно конвертировать ссылки из относительной в абсолютную вручную?
Ответить с цитированием
  #6 (permalink)  
Старый 14.03.2009, 20:40
Интересующийся
Отправить личное сообщение для Lexi Посмотреть профиль Найти все сообщения от Lexi
 
Регистрация: 14.03.2009
Сообщений: 29

Gvozd,
Ну, домен в моём случае меняться не будет, так что можно и попробовать.

Андрей Параничев,
Задача частная, но хотелось бы иметь общее решение
Ответить с цитированием
  #7 (permalink)  
Старый 14.03.2009, 20:43
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

Lexi,
то есть вам надо менять не домен(со своего на чужой) в базовом адресе, а подпапку в бзаовом адресе?
тогда должно сработать, но имхо несмотря на краткость это не самое лучшее решение.задействовать DOM для работы со строками это слишком, хотя и обратное является своего рода "экономией на спичках"
Ответить с цитированием
  #8 (permalink)  
Старый 14.03.2009, 20:56
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Создавайте тег base с нужным href, после определения урла удаляйте.
Ответить с цитированием
  #9 (permalink)  
Старый 14.03.2009, 21:21
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

нет.я все -таки против задействования DOM-a для таких вещей.
по меому та функция, что вам выдал гугл очень даже хорошая.
почистить от того что вам не надо, и будет в самый раз
Ответить с цитированием
  #10 (permalink)  
Старый 14.03.2009, 21:54
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Gvozd,
там не все так просто, а тут несколько строчек. Простота -- залог надежности.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
JQuery как получить url? Memfis jQuery 8 29.07.2011 01:39
Как проверить ссылку на работоспособнось? Oleg_777 Общие вопросы Javascript 23 19.03.2009 18:57
Как постоянно запускать одну и туже ссылку? Maxim Общие вопросы Javascript 28 27.02.2009 09:25
Как из HTML-документа с помощью Javascript получить оглавление каталога? eto_dimka Общие вопросы Javascript 1 04.01.2009 22:18
Как получить файл с сервера AJlekceu AJAX и COMET 1 02.11.2008 13:41