我的问题很简单,但我不能让它工作,在localhost上它正在替换href而没有任何问题,但是在服务器上却没有,我不知道是不是因为.htaccess文件更改了URL这就是为什么Jquery不改变它或者这个代码有问题的原因。
从屏幕抓取中检索href,它包含url的后半部分,如:
/一些/内容
看起来像
虽然看起来像:
var base = "http://www.google.co.uk/";
$('a').each(function(index, element) {
element.href = element.href.replace("http://dev.website1/", base);
});
$('img').each(function(index, element) {
element.src = element.src.replace("http://dev.website1/", base);
});
答案 0 :(得分:0)
您应该设置元素.prop([prop])
或.attr([attr])
,而不是.href
/ .src
。
var base = "http://www.google.co.uk/";
$('a').each(function() {
var $element = $(this);
var href = $element.prop('href');
$element.prop('href', href.replace("http://dev.website1/", base));
});
$('img').each(function() {
var $element = $(this);
var src = $element.prop('src');
$element.prop('src', src.replace("http://dev.website1/", base));
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div>
<a href="http://dev.website1/test_href">Test href</a><br />
<a href="http://dev.website1/test_href2">Test href2</a><br />
<a href="http://dev.website1/test_href3">Test href3</a><br />
</div>
<br />
<div>
<img src="http://dev.website1/test_src.png" alt="test_src" /><br />
<img src="http://dev.website1/test_src2.png" alt="test_src2" /><br />
<img src="http://dev.website1/test_src3.png" alt="test_src3" /><br />
</div>
&#13;
答案 1 :(得分:0)
var base = "http://www.google.co.uk/";
$('a').each(function(index, element) {
let e1 = $(element)
e1.attr('href', e1.attr('href').replace("http://dev.website1/", base));
});
$('img').each(function(index, element) {
let e1 = $(element)
e1.attr('src', e1.attr('src').replace("http://dev.website1/", base));
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a href="http://dev.website1/aaa">link1</a>
<img src="http://dev.website1/bbb" />
&#13;
使用.attr()
答案 2 :(得分:0)
试试这个!
var base = "http://www.google.co.uk/";
$('a').each(function(index, element) {
$(element).attr('href').replace("http://dev.website1/", base);
});
$('img').each(function(index, element) {
$(element).attr('src').replace("http://dev.website1/", base);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<a href="http://dev.website1/">Test</a>
<img src="http://dev.website1/"">
答案 3 :(得分:-1)
element.href。尝试使用element.getAttribute(&#39; href&#39;)获取它。