JS第五课_DOM对象模型高级编程(增查)

Posted on   夜雨初凉  阅读(36)  评论(0编辑  收藏  举报

去掉空格文本节点

function cleanWhitespaceDG(nodeObj){ 
	//经典算法:递归算法
	for(var i=nodeObj.childNodes.length-1;i>=0;i--){
		var node=nodeObj.childNodes[i];
	   //文本节点 并且 文本节点的值为空白
	  if(node.nodeType==3 && /\s/.test(node.nodeValue)){  
		node.parentNode.removeChild(node);
		continue;
	  }
	  cleanWhitespaceDG(node);
	}
}

1.找到元素

  • 根据ID
    document.getElementById("id");
  • 根据name
    document.getElementsByName("name");
  • 根据标签名称 标签tag
    document.getElementsByTagName("p");
  • 根据表单
    document.form表单name.文本框的name.value;

2.找节点

  • 本节点--自己
    var tab=document.getElemetById("tab");
  • 父节点
    tab.parentNode
  • 子节点
    tab.firstChild--第一个子节点
    tab.lastChild--最后一个子节点
    tab.childNodes--子节点的集合
    tab.childNodes[下标]--数组下标一样 0开始
    tab.childNodes.length---获取子节点的总数

3.新建元素

JS的写法
var im=document.createElement("img");
----上一句代码相当于------

赋值图片路径
im.src="55.gif";
HTML的写法

	<img src=""/>
定义属性注意:必须当前标签有该属性才可以设置

标签新建的时候自动识别单/双
var tab=document.createElement("table");

4.追加元素(后) -- 排队

节点对象.appendChild(新的元素);
tab.appendChild(im);


5.插入元素(前) -- 插队

本元素.父节点.插入(新元素,本元素)
tab.parentNode.insertBefore(im,tab);


编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~

随笔 - 51, 文章 - 0, 评论 - 0, 阅读 - 10758

Copyright © 2025 夜雨初凉
Powered by .NET 9.0 on Kubernetes

点击右上角即可分享
微信分享提示