2015-09-03 3 views
0

У меня есть плагин, который будет использоваться несколько раз на одной странице. Каждый из них содержится в div с уникальным идентификатором.Замена корневых относительных ссылок с полными URL-адресами

Содержимое разделов будет получено с изображениями, пути которых должны быть добавлены с разными доменами. Например

<div id="mydiv"><img src="/images/somepic.jpg"></div> 

Моя текущая функция делает правильно расположить изображения и изменять их:

jQuery("#mydiv img[src^='/']").prop('src', 
    function(_idx, oldHref) { 
    return 'http://example.com'+oldHref; 
    } 
); 

Однако он устанавливает их SRC для http://example.comhttp://thecurrentsite/images/somepic.jpg даже если источник начал с/и не содержали thecurrentsite.

Каким образом URL-адрес thecurrentsite попадает в oldHref, передаваемый функцией prop()?

+0

Что 'JQuery (это). attr ('src') 'return? – rybo111

+0

@ rybo111 это решает! Добавить как ответ? 'return 'http: //example.com'jjQuery (this) .attr (' src ');' – jerrygarciuh

ответ

1

опора возвращает СРК как полный путь использования ATTR вместо того, чтобы получить оригинальный путь

check this fiddle, он предупреждает две версии:

<img src='test.html'> 

$("img").prop("src") => full path 
$("img").attr("src") => original relative path 
1

Если вы используете attr вместо prop, он работает. Fiddle

Смежные вопросы