Javascript 不使用jquery替换img src属性
我正在使用javascript替换img src属性 我的代码是Javascript 不使用jquery替换img src属性,javascript,jquery-plugins,jquery-selectors,Javascript,Jquery Plugins,Jquery Selectors,我正在使用javascript替换img src属性 我的代码是 <div class="reader" id="reader1"></div> <img src="images/img_001.jpg" alt="image" id="image1"/> </div> src属性没有替换您不需要调用replace(),只需设置新的src: $("#image1").attr("src", "images/img_002.j
<div class="reader" id="reader1"></div>
<img src="images/img_001.jpg" alt="image" id="image1"/>
</div>
src属性没有替换您不需要调用
replace()
,只需设置新的src:
$("#image1").attr("src", "images/img_002.jpg");
见:
或者你可以使用
您可以使用
$('#image1').attr('src', 'images/img_002.jpg');
如果您正在使用:
$('#image1').attr('src');
函数将返回一个字符串。字符串不会通过引用传递,而是被复制。因此修改它实际上并不会改变它。原因是
replace
方法实际上返回新字符串,而不是就地编辑它
您可以通过以下方式实现您想要的:
$("#image1").attr("src", function(){
return $(this).attr('src').replace("images/img_001.jpg", "images/img_002.jpg");
});
这将通过调用函数(第二个参数)为src
属性设置一个新值。此函数实际返回被替换的值
实时示例(使用开发工具检查src):您可以直接使用以下工具设置
src
的值:
$("#image1").attr("src", "images/img_002.jpg");
看看。“jQuery没有replace()方法”-没有,但是javascript有@是的,我一点也没想到!编辑了我的答案。不一定,我还是使用jQuery语法来读取函数中的
src
属性。但我同意你的方法也会奏效!我相信你可以做函数(I,src){return src.replace(…
也可以。@david-当然可以了-检查一下这个小提琴中的src:-attr('src')
只返回一个字符串,这个字符串有一个replace
方法!为什么?src
是一个属性。@david:)不可信,你可以使用prop()要设置src…只需查看正在运行的演示,并应取消您的下一个选项是的,您可以。但我的问题是为什么?使用prop
无法解决问题,因为问题是语法错误。attr()
的使用非常正确,因为src
是一个属性,就像OP发布的一样。@David您的问题是,为什么?src是一个属性。src是一个属性,您可以使用prop()设置属性值我也知道你可以,但是使用prop
并不完全正确。而且,它与这个问题无关,所以我认为它对poster.jQuery(“#image1”).attr(“src”,“/assets/arrow\u small\u left.png”)没有任何价值
$('#image1').attr('src');
$("#image1").attr("src", function(){
return $(this).attr('src').replace("images/img_001.jpg", "images/img_002.jpg");
});
$("#image1").attr("src", "images/img_002.jpg");