当用户点击"删除"链接我需要将图像的src
属性设置为空。当我使用
$('#img').prop('src', null);
src
不为空,但指向当前网址
如果我使用
删除src
$('#img').removeProp('src');
永远不要让我将来分配回来
实现这一目标的最佳方式是什么?
答案 0 :(得分:10)
尝试使用attr(),
$('#img').attr('src', '');
因为你有id选择器。使用本机javascript方法document.getElementById将为您带来更多性能优势。另外,您可能需要将#
设置为src
而不是empty
字符串。
document.getElementById('img').src = "#";
答案 1 :(得分:6)
我只是访问底层<img>
节点,并将src
的值设置为空字符串。
$('#img')[ 0 ].src = '#';
小提琴:http://jsfiddle.net/P4pRu/
更新:当我们传入空字符串时,似乎 Chrome 不满意。 Firefox仍然显示出预期的行为(我很确定这在Chrome版本中也可以使用几周/版本)。
但是,例如,通过#
,工作正常。
更新2:
即使imgNode.removeAttribute('src');
不再在Chrome中删除图像的直观表示(有趣......)。
答案 2 :(得分:0)
属性'src'实际上不是属性,它是属性。将属性视为可以使用布尔值或列表和属性设置的事物,将其视为更具动态性的事物。
$('#img').attr('src', '');
从jQuery 1.6开始,.prop()方法提供了一种显式检索属性值的方法,而.attr()检索属性 - http://api.jquery.com/prop/