我遇到了用JS删除图像的问题 代码像... ...
<img src="image.png" id='image_X'>
...
document.getElementById('image_X').src=''
图像保持不变:(所以我的问题是如何用JS删除图像? 更详细......如何动态修改图像src属性值?
赞赏任何有用的评论
答案 0 :(得分:14)
var image_x = document.getElementById('image_X');
image_x.parentNode.removeChild(image_x);
答案 1 :(得分:6)
你可以隐藏它。在香草JS中将是:
document.getElementById("image_X").style.display='none';
在jQuery中:
$("#image_X").css('display', 'none');
如果你真的想从DOM中删除它,可以在图片元素的removeChild
上调用parentNode
方法。
答案 2 :(得分:6)
这应该这样做:
var el = document.getElementById('image_X');
el.parentNode.removeChild(el);
你可以将它整齐地包装成这样的函数:
function removeElement(ele) {
ele.parentNode.removeChild(ele);
}
removeElement(document.getElementById("image_X"));
答案 3 :(得分:3)
获取其父级并使用removeChild。
var parent = getElementById('parentid');
var child = document.getElementById('imagex');
parent.removeChild(child);
答案 4 :(得分:1)
要在JavaScript中删除图像(或通常删除任何内容),首先应抓取元素,然后遍历其父元素,然后使用removeChild
方法删除子元素。
答案 5 :(得分:1)
尝试使用:
document.getElementByID("").style.visibilty="hidden";
当您不想显示图像时
document.getElementById("").style.visibility="visible";
当你想要显示图像时。
答案 6 :(得分:0)
我想分享一些额外的提示......
@Marecky,感谢Jared Farrish的回答,我可以找出一些有关JS的有用点......
但接下来我还要进行自己的额外研究......这不是一个超级事实,而是一个小理论提示......所以,因此,我可以找到那些浏览器,作为任何桌面应用程序当然,是用某种GUI框架创建的......当然,大多数GUI(例如Swing)框架当然可以使用双缓冲对象来显示图形...所以当它(例如FF)时将脚本重新转换为图形对象,GUI同步规则变为现实......
......好的......从GUI重绘问题到脚本本身......
所以我的问题是关于玩DOM对象...事实上,如果像document.getEelementById('image_X')。src =''这样的代码被激活,img标签不会更新UI事件;所以<body>
标签空间(由于某种原因),我不确定,但是,保持某种'缓存'状态......也许这使得img(如果它在体内)变成'静态';所以我必须找到一些有用的附加对象,它支持动态UI更新。作为测试,我使用div而不是纯粹的body标签来保持img;所以不要更新正文,而只更新内部内容,这有助于。所以在我的案例中使用JS + HTML很有帮助......
我希望小费能节省一天
答案 7 :(得分:0)
尝试
document.getEelementById('image_X').src="''";
但会显示损坏的图像
答案 8 :(得分:0)
1)使用父节点删除img元素。 2)然后,存储该父节点。 3)然后,在该父节点中创建新的img元素。