近期在做H5項目時,用戶反映用H5頁面查看視頻時,多打開幾次或切換多次就出現內存奔潰,視頻區域直接顯白的情況。
(我自己的電腦測試多輪都沒有這個現象,后面才發現是性能和操作系統比較好才不會,一般的電腦還是會的。)
通過偵測進程的內存占用,多點擊幾次視頻播放,內存占用一直在逐步上升,由開始的100M左右上升到600M左右,沒有減少的趨勢。
在查看w3school.網站的video對象、標簽的各項屬性后,使用了removeAttribute方法也沒有用。后面還是簡單粗暴,將video的src屬性=null,再讓父級清空自己,這樣內存得到了釋放。圓滿的解決了多次打開視頻導致內存飆升的問題。
具體的代碼是:
$('#videoplayer')[0].pause();
$('#videoplayer')[0].src=null;
$('#videoplayer').parent().empty();