DOM操作获取标签方法、数据类型

一、操作 html 页面

document.getElementById('box'); // 选中一个id为box的标签

可以理解为从文档里面 通过一个 id:box 来获取 一个元素
// => document 文档 ⇒ get 得到 ⇒ Element 元素 ⇒ By 通过 ⇒ id:box

二、操作标签内容:

  1. innerHTML – 会解析标签
var box = document.getElementById("box");
box.innerTHML = "<p>我被添加到了盒子里面</p>";console.log(box.innerHTML); // <p>....</p>
  1. innerText – 不会解析标签
var box = document.getElementById("box");
box.innerText = "<p>我会添加到box里面</p>";console.log(box.innerText); // 我会添加到box里面

三、变量:

  1. 变量的初始化
var name = 'mary';
var lastName = 'bob';
  1. 变量必须先声明再赋值
a = 123;
console.log(a); // 123 -- 理论上是不可以的// 必须先声明再赋值
var a;
a = 123;// 或者直接一步到位
var a = 123;
  1. 声明变量,没赋值默认为 undefined
var a;
console.log(a); // undefined
  1. 变量不声明就使用会报错
console.log(a); // a is not defined
  1. 不使用 var 声明的变量,会变成全局变量,挂到 window对象 上面
a = 123 === window.a = 123
  1. 变量多次赋值以最后一次赋值为准
var a = 132;
a = 465;
console.log(a); // 465
  1. var 定义多个变量,用逗号隔开
// bad
var a = 123;
var b = 456;
var c = 789;// good --> 规范的写法
var a = 123,b = 456,c = 789;

四、变量的命名规则

  1. 严格区分大小写
var abc = 123;
var ABC = 123;
// 这是两个不同的变量
  1. 见名知意
var fadfaf13 = 134423; × // 别人不知道你这是什么var inputValue = 131;
var keyCode = 65;
  1. 不能以数字开头,只能包含字母、下划线、数字和$(美元符)
var 1abc = 113; ×
var a1 = 123;
var _name = 133;
var $val = 123;
  1. 不能使用中文
var 你好 = 133; ×
  1. 不能使用 关键字(已经有了特殊功能的) 和 保留字(未来可能使用的文字)
var class = ...; ×
var var = ...; ×
  1. 必须遵守 驼峰命名法(大驼峰、小驼峰)
var myBox = ...;
var thisTemp = ...;

五、DOM操作之获取标签方法

  1. 通过 id 获取
var box = document.getElementById("box");
  1. 通过 class 获取
var aStu = document.getElementsByClassName("names");
  1. 通过 标签名 获取
var aUl = document.getElementsByTagName("ul");
  1. 通过 name (表单)获取
var aName = document.getElementsByName("username");
  1. 获取 一堆标签中的第一个
var oLi = document.querySelector("#box > ul > li");
  1. 获取 一堆标签
var aLi = document.querySelector("#box > ul > li");
  1. 获取 html 标签
var html = document.documentElement;
  1. 获取 body 标签
var body = document.body;
  1. 获取 head 标签
var head = doucment.head;
  1. 获取网页标题 title
var titleVal = document.title;

建议获取单个用 getEle..... 获取多个用 querySelectorAll
获取多个元素,最终得到的是一个元素数组,取的话用索引就可以了 arr[0]

六、给元素添加样式:

  1. Element.style.属性名 = 属性值
var box = document.querySelector('box');
box.style.display = 'none';
  1. element.style.classText
box.style.classText = `width: 200px;height: 200px;background-color: red;margin: 10px 0 0 10px;
`;

样式属性比较多就用 classText ,样式少就直接加

  1. Element.classList – 操作已经存在的 class
  • length ⇒ 返回类列表里面类名的个数
  • add() ⇒ 添加一个或者多个类名
  • remove()⇒ 移除一个或者多个类名
  • toggle(class, [true | false]) ⇒ 第二个参数可选,用于强制添加或者移除类名,不管这个类名是否存在。为 true 就是添加,false 移除
  • contains(class) ⇒ 判断指定的类名是否存在,返回 true / false
  • item(index) ⇒ 返回索引对应的类名,从 0 开始
let title = document.querySelector('.title');
// 添加类
title.classList.add('red', 'pink', 'blue', 'green', 'yellow', 'purple', 'brown');
// 输出一共有多少个类名
console.log(title.classList.length); // 8
// 移除类名
title.classList.remove('red', 'pink');
console.log(title.classList.length); // 6
title.onclick = function () {// 切换类title.classList.toggle('show');
}
// 判断制定的类名是否存在
console.log(title.classList.contains('title'));
// 返回元素中索引值对应的类名
console.log(title.classList.item(0)); // title

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/556213.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于easypoi实现自定义模板导出excel

项目中需要做一个统计报表功能&#xff0c;实现各种Excel报表数据导出。要求表头能够动态配置&#xff0c;表数据通过存储过程实现&#xff0c;也要求能够动态配置。 技术选型&#xff1a; 由于之前在项目中使用过easypoi&#xff0c;相对于原生apache poi&#xff0c;能够用很…

vb6 datagrid表格垂直居中_老板不喜欢看你的Excel表格,学完这些美化技巧,早日升职加薪...

Excel报表是工作中经常要制作的&#xff0c;给老板看的表格越是简单明了越好&#xff0c;工作得到认可&#xff0c;给你升职加薪&#xff0c;如果你发给你老板的表格是这样的&#xff1a;对齐方式各种各样&#xff0c;数据看起来也很枯燥&#xff0c;仅需简单4点&#xff0c;轻…

typeof 数据类型转换

typeof 可以转换的数据类型有&#xff1a; number string boolean object undefined function null 原来是给对象占位的&#xff0c;代表空对象。后来JavaScript设计者也没改过来&#xff0c;所以 typeof 一直认为 null 的类型是 object const num null; num // object一、 …

Java接口修饰符详解

接口就是提供一种统一的”协议”&#xff0c;而接口中的属性也属于“协议”中的成员。它们是公共的&#xff0c;静态的&#xff0c;最终的常量。相当于全局常量。抽象类是不“完全”的类&#xff0c;相当于是接口和具体类的一个中间层。即满足接口的抽象&#xff0c;也满足具体…

python深度复制列表_Python-如何深层复制列表?

我对列表副本有一些问题&#xff1a;所以之后我得到了E0来自get_edge&#xff0c;我做的副本E0通过调用E0_copy list(E0)。我猜这里E0_copy是的较深的副本E0&#xff0c;我通过E0_copy了karger(E)。但是在主要功能上。为什么print E0[1:10]for循环之前的结果与for循环之后的结…

数据转换之 Number

看起来不是数组的转换为数字之后就不是数字&#xff08;NaN&#xff09; 只有 才会进行字符串拼接 - * / 都不会 let num Number(123); console.log(typeof(num) : num); // number : 123let demo true; let num Number(demo); console.log(typeof(num) : num); /…

sqlite3修改表内容python_Python sqlite3数据库模块使用攻略

Python作为数据科学主流语言&#xff0c;被广泛用于数据读存、处理、分析、建模&#xff0c;可以说是无所不能。数据一般存放在本地文件或者数据库里&#xff0c;之前介绍过如何使用python读取本地文件&#xff0c;也对# PyMySQL、cx_Oracle等数据库连接库做过简单的使用分享。…

parseInt(string, radix)

一、 变成 整形数字 二、 当字母和数字混杂的时候&#xff0c;从数字位开始看&#xff0c;一直看到非数字位为止&#xff0c;如果这个混杂的字符串不是以数字开头&#xff0c;那么就是 NaN 三、 第二个参数&#xff0c;表示将变量的值以多少进制&#xff08;范围2~32&#xff0…

查看论坛隐藏链接_软连接与硬链接的区别

点击上方蓝色“后端开发杂谈”关注我们, 专注于后端日常开发技术分享硬链接与软连接的联系与区别文件都有文件名和数据, 这在Linux上被分为两部分: 用户数据(user data) 与 元数据(metadata). 用户数据, 即文件数据块( data block), 数据块是记录文件真实内容的地方; 元数据是文…

parseFloat(string)

一、 将字符串转换为浮点数&#xff08;小数&#xff09; 二、 能正常输出小数 三、只看除了一个点以前的非数字位为止 let demo 100.1; let num parseFloat(demo); // 能正常输出小数 console.log(typeof(num) : num); // number : 100.1let demo 100.1.2; let num p…

python的合法语句_Python练习2

问答&#xff1a;1. 写出python中的几种分支结构&#xff0c;并解释其执行过程;(1) if&#xff1a;if 表达式: #条件语句 #输出(2)if...else...if 表达式: #条件语句 #输出else: #其他条件语句 #其他输出(3)if...elif...else...if 表达式: #条件1语…

java日志框架JUL、JCL、Slf4j、Log4j、Log4j2、Logback 一网打尽

为什么程序需要记录日志 我们不可能实时的24小时对系统进行人工监控&#xff0c;那么如果程序出现异常错误时要如何排查呢&#xff1f;并且系统在运行时做了哪些事情我们又从何得知呢&#xff1f;这个时候日志这个概念就出现了&#xff0c;日志的出现对系统监控和异常分析起着…

python继承问题_Python类的继承问题

Python相比较Java&#xff0c;C之类的高级语言是相对来说比较容易的&#xff0c;但能把Python学的很好的人却不多。虽然Python容易&#xff0c;但python的学习道路并不简单&#xff0c;可借助的资料不多&#xff0c;能把python讲的明白的人更是不多。作为一门高级语言&#xff…

String(min)

不管括号里面是啥&#xff0c;都尝试转换为字符串 let demo 1234.1; let num String(demo); console.log(typeof(num) : num); // string : 1234.1let demo undefined; let num String(demo); console.log(typeof(num) : num); // string : undefinedlet demo nu…

SpringBoot项目中Controller层代码编写规范整理

文章目录Controller层代码规范SpringMVC接口定义要注意以下常见的几种问题1. 返回格式不统一2. 没有考虑失败情况3. 出现和业务无关的输入参数Controller层代码规范 主要的内容是就是接口定义里面的内容&#xff0c;你只要遵循里面的规范&#xff0c;controller就问题不大&…

如何从一张图片里取出其中一部分_如何鉴别坑人的锌合金龙头

01.对大部分人而言&#xff0c;锌合金龙头是一个熟悉又陌生的词儿。当我们提起锌合金龙头时&#xff0c;很多人会一脸茫然的回答&#xff1a;啥&#xff1f;锌合金龙头&#xff1f;没听过&#xff01;不认识&#xff01;但在日常生活中锌合金龙头的出现率可不低&#xff01;不信…

Boolean()

一、 尝试把括号里面值转换为布尔值。 二、 只要是六个表示 false 之外的&#xff08;false / null / undefined / NaN / ""&#xff09;&#xff0c;都是 true let demo undefined; let num Boolean(demo); console.log(typeof(num) : num); // Boolean : f…

SpringBoot框架中各层(DTO、DAO、Service、Controller)理解

粗略理解 View层→Controller层&#xff08;响应用户请求&#xff09;→Service层&#xff08;接口→接口实现类&#xff09;→DAO层&#xff0c;即Mapper层&#xff08;抽象类&#xff1a;xxxMapper.java文件&#xff0c;具体实现在xxxMapper.xml&#xff09;→Model层&#…

verilog找不到模块_工欲善其事,必先利其器 verilog编辑器搭建

一款合适的编辑器能够大大提高我们代码的编写速度&#xff0c;而sublime就是一款非常强大的编辑器&#xff0c;它在拥有丰富的插件的同时&#xff0c;也具备非常美型的外观。sublime是一款免费的编辑器&#xff0c;虽然不进行购买的话会时不时地提示购买&#xff0c;但是无视就…

toString(radix)

一、一般用来做进制转换&#xff0c;括号里面就是填进制数 二、 把其它类型的变量转换字符串类型&#xff0c;少用&#xff0c;一般要转换为字符串拼接一个空字符串就可以了 let num 1 ; console.log(typeof(num) : num); // string : 1let demo 1234; let num demo.t…