JavaScript之Dom操作【刪除當前節點】


//最新更新:2017-11-25
//現在可以通過更強大而快捷的方式為所有的HTMLElement元素的Dom操作擴展新的方法【注意事項:處理HTMLElemnt元素時,此法對IE-8無效】
//原理:原型

(function(){
	HTMLElement.prototype.remove = function(){
		if(this.parentNode){
			this.parentNode.removeChild(this);
		}
	}
})();



//demo
var div = document.createElement("div");
div.setAttribute("id","demo");
div.innerText = "hello";
document.body.append(div);
//div.remove();

 


傳統方式:
document.getElementById("test").parentNode.removeChild(document.getElementById("test"));

function removeById(Id){
    document.getElementById(Id).parentNode.removeChild(document.getElementById(Id))
}

 

function removeByClassName(classNames,indexs){

   for(var i = 0;i<classNames.length;i++){
       document.getElementsByClassName(classNames[i])[indexs[i]].parentNode.removeChild(document.getElementsByClassName(classNames[i])[indexs[i]]
); } }

 以清理百度文庫為例:

step0:將文檔全部頁面都在網頁上展開

step1:點擊文庫的全屏圖標

step2:

clear();
function removeById(Id){
    document.getElementById(Id).parentNode.removeChild(document.getElementById(Id))
}
function removeByClassName(classNames,indexs){
   for(var i = 0;i<classNames.length;i++){
       document.getElementsByClassName(classNames[i])[indexs[i]].parentNode.removeChild(document.getElementsByClassName(classNames[i])[indexs[i]]); 
	} 
}
removeById("next_doc_box");
removeByClassName(["fix-searchbar-wrap","reader-tools-bar-wrap","pay-page-mod","ft","footer","new-ico-wkmember-free-doc"],[0,0,0,0,0,0]);

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM