JS - 如何用JavaScript删除图像?

时间:2011-07-23 19:13:45

标签: javascript html5

我遇到了用JS删除图像的问题 代码像... ...

<img src="image.png" id='image_X'>
...
document.getElementById('image_X').src=''

图像保持不变:(所以我的问题是如何用JS删除图像? 更详细......如何动态修改图像src属性值?

赞赏任何有用的评论

9 个答案:

答案 0 :(得分:14)

var image_x = document.getElementById('image_X');
image_x.parentNode.removeChild(image_x);

http://jsfiddle.net/5DdyL/

答案 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);

You can try it here.

你可以将它整齐地包装成这样的函数:

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元素。