当前位置: 首页 > news >正文

JS基础部分

引入方式

内部脚本在这里插入图片描述
外部脚本
在这里插入图片描述

变量

使用let声明变量,弱类型,使用const声明常量

在这里插入图片描述
在这里插入图片描述
因为箭头函数中this指针有问题,会默认指向父级对象

DOM

文档对象模型,将标记语言的各个部分封装成对应的对象。js通过dom就能够对html进行操作
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
代码示例:

<body><h1>js文档对象模型DOM</h1><!-- DOM的思路就是万物皆对象,网页中的所有元素都是一个个对象,通过DOM可以对网页中的元素进行操作。 --><!-- DOM的三个主要对象:document、window、element。 --><h1 id = "title1">111</h1><h1 id = "title2">222</h1><h1 id = "title3">333</h1><script>// 修改第一个标题中的文本内容// 获取到第一个dom对象,调用其方法修改文本内容document.querySelector("#title1").innerHTML = "修改后的标题1";let h1 = document.querySelectorAll("h1"); // 获取到一个集合// 遍历所有h1对象,修改其文本内容for(let i = 0; i < h1.length; i++){h1[i].innerHTML = "修改后的标题" + (i+1);}</script>
</body>

事件监听

在这里插入图片描述
在这里插入图片描述
代码示例

<body><input type="button" id="btn1" value = "点我一下试试"><input type="button" id="btn2" value = "点我"><script>// 给按钮添加点击事件,新方法,可以多次绑定同一事件document.querySelector('#btn1').addEventListener('click', () => {console.log('点就点呗');});document.querySelector('#btn1').addEventListener('click', () => {console.log('再点一次试试');});// 给按钮添加点击事件,老方法,只能绑定一次事件,会覆盖document.getElementById('btn2').onclick = function() {console.log('老方法,只能绑定一次事件,会覆盖');}document.getElementById('btn2').onclick = function() {console.log('老方法,把前面的覆盖了');}</script>
</body>
    <script>// 给上述表格的数据行添加事件监听,实现鼠标进入后变色,使用新语法let trs = document.querySelectorAll('p');for(let i = 0; i < trs.length; i++) {trs[i].addEventListener('mouseenter', function() {this.style.backgroundColor = 'yellow';});trs[i].addEventListener('mouseleave', function() {this.style.backgroundColor = 'white';});}</script>

常见事件
在这里插入图片描述
js代码的优化:大量的监听事件代码功能可复用,减小编写数量


http://www.mrgr.cn/news/94609.html

相关文章:

  • 1.8PageTable
  • 个人居家 Web移动端 局域网 远程控制电脑 工具 PC遥控器拿去玩吧
  • 特殊 IP 地址
  • [GHCTF 2025]GetShell
  • c语言整理
  • OSPF-2 邻接建立关系
  • Mybatis批量操作
  • 数据库的基本知识
  • LeetCode 热题 100_前 K 个高频元素(75_347_中等_C++)(堆)(哈希表+排序;哈希表+优先队列(小根堆))
  • @RequestParam、@RequestBody、@PathVariable
  • 虚幻基础:蓝图常用节点
  • 总结 HTTP 协议的基本格式, 相关知识以及抓包工具fiddler的使用
  • 【bug日记】 编译错误
  • 自由学习记录(44)
  • C++相关基础概念之入门讲解(上)
  • 用Lua脚本实现Redis原子操作
  • Qt 控件概述 QWdiget
  • Java数据结构第二十三期:Map与Set的高效应用之道(二)
  • A SURVEY ON POST-TRAINING OF LARGE LANGUAGE MODELS——大型语言模型的训练后优化综述——第2部分
  • 从0开始搭建微服务架构特别篇SpringCloud网关聚合knife4j