簡體   English   中英

Javascript能夠從HTML頁面卸載圖像嗎?

[英]is Javascript able to unload an image from an HTML page?

我想知道是否可以從HTML頁面卸載圖像並通過一些Javascript指令釋放其內存占用。 假設圖像已經顯示在屏幕上。 假設我需要卸載它以節省內存(原因與此無關)。 我可以使用Javascript嗎?

您對問題的評論是正確的,您可以將其從DOM中刪除,但是當瀏覽器確定它是好的並准備好時,瀏覽器將從內存中清除它。

要從DOM中清除它,您可以執行以下操作:

var badImage = document.querySelector("img#idOfImage"); 
//or "img[href='nameofimagefile.jpeg']" 
//whatever you need to do to get the right element
//then, remove it:

badImage.parentElement.removeChild(badImage);
$('#myDiv').remove();

要么

function removeElement(divNum) {
    var d = document.getElementById('myDiv');
    var olddiv = document.getElementById(divNum);
    d.removeChild(olddiv);
}

將它從DOM中刪除但是它不會釋放任何內存,帶寬或http請求......所以性能方面它不會產生很大的差異(不考慮渲染)。

但是我相信如果圖像從DOM中刪除,它使用的內存最終將被瀏覽器管理和刪除(垃圾收集)。

所以簡而言之,我不認為有一種特定的方法可以將其從內存中刪除,因為這是一個瀏覽器級別的問題。

您可以通過在刪除之前將src屬性指定為1x1像素來釋放img元素的內存。

const imgElement = document.querySelector(selector);
imgElement.setAttribute('src', '/images/pixel.gif');
imgElement.parentElement.removeChild(imgElement);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM