伴学笔记——JavaScript入门之DOM处理

68 阅读4分钟

看了一下ai练中学的测试案例,关于JavaScript的入门不多,在听了课程之后也没有很好的理解JavaScript在前端中的应用,于是在询问ai后得到如下学习JavaScript的部分

  1. 基础语法:包括变量、数据类型、运算符、控制流语句(如 if 语句、for 循环、while 循环等)。
  2. 函数:如何定义和调用函数,以及函数的参数和返回值。
  3. 对象和面向对象编程:JavaScript 中的对象、构造函数、继承、封装和多态。
  4. 数组和数组方法:如何创建和操作数组,以及数组的各种方法(如 push、pop、slice、splice 等)。
  5. 字符串和字符串方法:如何操作字符串,以及字符串的各种方法(如 toUpperCase、toLowerCase、indexOf、substring 等)。
  6. 事件处理:如何处理 DOM 事件,如点击事件、鼠标移动事件等。
  7. DOM 操作:如何使用 JavaScript 来操作 HTML 文档对象模型(DOM),包括添加、删除、修改元素等。
  8. 表单处理:如何处理表单元素,如获取表单数据、验证表单等。
  9. AJAX 和 Fetch API:如何使用 JavaScript 进行异步请求,以及如何处理服务器响应。
  10. JSON:如何使用 JavaScript 来处理 JSON 数据。
  11. 错误处理:如何捕获和处理 JavaScript 中的错误。
  12. 模块化:如何使用模块来组织和管理 JavaScript 代码,包括 CommonJS、AMD 和 ES6 模块。
  13. 闭包和作用域:理解 JavaScript 中的闭包和作用域概念。
  14. 正则表达式:如何使用正则表达式来匹配和处理字符串。
  15. 性能优化:如何优化 JavaScript 代码的性能,包括减少 DOM 操作、使用事件委托、避免内存泄漏等。
  16. 安全:了解 JavaScript 中的安全问题,如跨站脚本攻击(XSS)和跨站请求伪造(CSRF)。
  17. 测试:如何使用测试框架(如 Jest、Mocha 等)来测试 JavaScript 代码。
  18. 工具和框架:了解流行的 JavaScript 工具和框架,如 React、Angular、Vue.js、Node.js 等。

而在前端时间通过字节内部课已经基本学习了html和css,首先就应该学习JavaScript和html的关系,达到一个学习过渡的效果,故有此篇。

首先我们需要了解,什么是DOM?

DOM,即文档对象模型(Document Object Model),是一种用于HTML和XML文档的编程接口。它将文档表示为一个节点树,其中每个节点代表文档的一部分,如元素、文本、属性等。通过DOM,开发者可以使用JavaScript等编程语言来访问和操作文档的内容和结构。

DOM的主要特点包括:

  1. 树形结构:DOM将文档表示为一个树形结构,其中每个节点都有一个父节点(除了根节点)和零个或多个子节点。
  2. 节点类型:DOM定义了多种节点类型,包括元素节点、文本节点、属性节点等,每种节点类型都有其特定的属性和方法。
  3. 访问和遍历:开发者可以使用DOM提供的API来访问和遍历文档树中的节点,例如通过ID、标签名、类名等方式获取特定的元素。
  4. 操作和修改:DOM允许开发者动态地操作和修改文档的内容和结构,例如添加、删除、替换节点,修改节点的属性和内容等。
  5. 事件处理:DOM支持事件处理,开发者可以为文档中的元素注册事件处理程序,以响应用户的交互行为,如点击、鼠标移动等。

DOM的应用非常广泛,它是Web开发中不可或缺的一部分,使得开发者能够创建动态和交互式的网页。在现代Web开发中,DOM通常与JavaScript一起使用,以实现更复杂的功能和用户体验。

可以看到,DOM是一个编程接口,允许我们使用JavaScript进行接入编程。

1.使用js遍历dom

`

// 获取元素 var element = document.getElementById("myElement");

// 遍历子节点 var childNodes = element.childNodes; for (var i = 0; i < childNodes.length; i++) { console.log(childNodes[i]); }

` 2.操作dom:

` // 创建新元素 var newElement = document.createElement("div"); newElement.className = "new-class";

// 添加到DOM中 var parentElement = document.getElementById("parent"); parentElement.appendChild(newElement);

`

3.事件处理

// 注册点击事件处理程序 var button = document.getElementById("myButton"); button.addEventListener("click", function() { alert("Button clicked!"); });

4.样式操作

`

// 获取元素并修改样式 var element = document.getElementById("myElement"); element.style.backgroundColor = "red"; element.style.width = "200px";

`

5.表单处理

// 获取表单值 var form = document.getElementById("myForm"); form.addEventListener("submit", function(event) { event.preventDefault(); var name = form.elements["name"].value; var email = form.elements["email"].value; console.log("Name:", name); console.log("Email:", email); });

6.性能优化

// 使用 requestAnimationFrame 优化动画 function animate() { // 动画逻辑 requestAnimationFrame(animate); } requestAnimationFrame(animate);

7.DOM API

`// 使用 querySelector 获取元素 var element = document.querySelector(".my-class");

// 使用 createElement 和 appendChild 创建并添加元素 var newElement = document.createElement("div"); newElement.textContent = "New element"; document.body.appendChild(newElement); `

8.跨浏览器兼容性

// 使用 addEventListener 处理事件 function addEvent(element, event, handler) { if (element.addEventListener) { element.addEventListener(event, handler, false); } else if (element.attachEvent) { element.attachEvent("on" + event, handler); } else { element["on" + event] = handler; } }

通过对上述的了解和一些以前已有的知识,我尝试使用js和html实现网页按钮功能

代码如下

首先我们需要在html文件中初始化按钮元素

<html> <button id = "myBotton">node</botton>

然后在js中使用document.getElementById通过id获取按钮元素
var button = document.getElementById("myButton");
button.addEventListener("click", function() {alert("按钮被点击了!");});

这样,一个基本的按钮就实现好了。