HTML基础之DOM
DOM(Document Object Model 文档对象模型)
一个web页面的展示,是由html标签组合成的一个页面,js是一门语言,dom对象实际就是将html标签转换成了一个文档对象。可以通过dom对象中js提供的方法,找到html的各个标签。通过找到标签就可以操作标签使页面动起来,让页面动起来;对于ui自动化来说我们可以用次方法来定位元素。
dom可以直接在浏览器的开发者工具的console中操作
获取标签
// 直接获取标签
操作标签
一、文本内容操作
innerHTMl和innertext
innerText 获取到标签中的主动闭合标签的中间的那个文案
tmp.innerText='老铁双击666'; //更改标签内文本内容
tmp.innerHTML; // 获取标签中的所有html代码,把可以将含有HTML代码的字符串变为标签-->
eg:
<!--tmp.innerHTML="<input type='button' value='提交'>"-->
input/textarea标签操作
tmp.value //获取input和textarea参数值
tmp.value='XXXXXX'对input和textarea的值进行赋值
select标签
tmp.value; //获取select标签的选定的value参数
tmp.value = '选项' // 修改select选中的选项,通过value修改更改必须预制value属性
tmp.selectedIndex; // 获取当前select标签的选中的选项下标
tmp.selectedIndex = 1 // 通过下标更改select的选项
绑定事件
直接绑定和间接绑定:
直接绑定:
eg.1:
<input type='button' value = '提交' style='float:left;margin-top: 50px' onclick='click1()';>
<script>
function click1() {
alert('click事件!!!'); //弹窗
}
</script>
间接绑定:
eg.2
<input type="button" id="i1" value="提交">
<input type="text" id="i2" placeholder="switch">
<script>
var target = document.getElementById('i1');//必须有分号
// target.onclick=function () {
// var tmp = document.getElementById('i2').value
// if (tmp==1){
// alert("tmp==1")
//
// }else if (tmp==2){
// alert('tmp==2')
// }else{
// alert('none')
// }
//</script>
onfocus() //获取光标时操作
onblur() //失去焦点做操作
onclick()//单击时操作
ondblclick()//双击时操作
onmouseover()//鼠标悬浮触发操作
onmouseout()//鼠标离开悬浮触发操作
=== 三个等号代表必须类型相同,是强类型判断;两个等号只判断值相等
操作样式
<!--tmp.className = 'c1'; // 更改标签class属性 只能有一个class属性-->
<!--tmp.classList;// 获取样式数组-->
<!--tmp.classList.add('aaa'); //添加样式 数组-->
<!--tmp.classList.remove('aaa'); //删除样式-->
tmp.checked; //获取checkbox的状态 true为勾选<!--操作单独样式-->
<!--style.xxx //操作任意样式属性,相当于在标签中增加一个style属性-->
<!--tmp.style.display='none'样式隐藏 操作单个样式属性,相当于在标签中增加一个style属性-->
<!--tmp.style.display=''相当于没有display属性-->
<!--tmp.style.backgroundColor='blue'-->
<!--js中不能使用“-”会把“-”后第一个字母变成大写来转义--> 创建标签:
通过对象方式创建标签
createElement(tagName) //通过DOM创建一个标签对象
appendChild(tagObj) //在父级标签内添加一个子标签对象
字符串方式创建标签
HTML基础之DOM的更多相关文章
- 前端基础之DOM和BOM
前端基础之DOM和BOM JavaScript分为 ECMAScript,DOM,BOM. BOM(Browser Object Model)是指浏览器对象模型,它使 JavaScript 有能力与浏 ...
- 进击的Python【第十五章】:Web前端基础之DOM
进击的Python[第十五章]:Web前端基础之DOM 简介:文档对象模型(Document Object Model,DOM)是一种用于HTML和XML文档的编程接口.它给文档提供了一种结构化的表示 ...
- [转]ExtJs基础--Html DOM、Ext Element及Component三者之间的区别
要学习及应用好Ext框架,必须需要理解Html DOM.Ext Element及Component三者之间的区别. 每一个HTML页面都有一个层次分明的DOM树模型,浏览器中的所有内容都有相应的DOM ...
- JavaScript基础:DOM操作详解
本文最初发表于博客园,并在GitHub上持续更新前端的系列文章.欢迎在GitHub上关注我,一起入门和进阶前端. 以下是正文. 前言 JavaScript的组成 JavaScript基础分为三个部分: ...
- 【2017-03-28】JS基础、DOM操作
一.JS基础 1.javascript功能 ⑴进行数据运算 ⑵控制浏览器功能 ⑶控制元素的属性.样式.内容 2.javascript位置和格式 可以放在html页的任意位置,也可以创建一个以js结尾的 ...
- 深入浅出DOM基础——《DOM探索之基础详解篇》学习笔记
来源于:https://github.com/jawil/blog/issues/9 之前通过深入学习DOM的相关知识,看了慕课网DOM探索之基础详解篇这个视频(在最近看第三遍的时候,准备记录一点东西 ...
- 11-28 网页基础--JavaScript(DOM)
网页基础 第二部分--HTMLDOM操作 一.定义:htmlDOM是一种面向对象的树的模型,它包含html中的所有元素:通过html可以找到所有包含在dom中的元素. 二.作用: 1.查找html元素 ...
- javaxml文件基础:Dom怎么生成xml文件
package CreateXmlByDom; import java.io.File; import javax.xml.parsers.DocumentBuilder; import javax. ...
- jquer 基础篇 dom操作
DOM操作: 1.新增元素:创建元素:$("HTML")返回的创建成功的新元素新增子元素:元素.append(obj) 在匹配元素的里面新增一个子元素 追加方式 新元素作为最后一个 ...
- web前端基础知识 Dom
文档对象模型(Document Object Model,DOM)是一种用于HTML和XML文档的编程接口.它给文档提供了一种结构化的表示方法,可以改变文档的内容和呈现方式.我们最为关心的是,DOM把 ...
随机推荐
- Oracle 导入dump
1. 准备好.dmp文件
- SQLAlchemy中Model.query和session.query(Model)的区别
我们使用Flask 0.11.1,Flask-SQLAlchemy 2.1使用PostgreSQL作为DBMS. 示例使用以下代码更新数据库中的数据: entry = Entry.query.get( ...
- 关于join
- CentOS 添加环境变量的三种方法
在CentOS 系统上安装完 MATLAB 后,为了使用方便,需要将 matlab 命令加到系统命令中,如果在没有添加到环境变量之前,执行“matlab”命令时,则会提示命令不存在的错误,如下所示: ...
- os.system 的坑,'C:\Program' 不是内部或外部命令,也不是可运行的程序 或批处理文件
首先对os.system()是执行一些系统命令,参数是以字符串的形式进行传递,如果有多个参数时,用空格隔开 例子1:cd 和 D:用空格间隔开来,代表两个参数 但一些情况空格只是字符串里面组成部分,不 ...
- hdu 1208 Ignatius and the Princess III 划分数,dp
题目 题意:给你一个数字n,求将其划分成若干个数字相加总共有多少种划分数: <span style="font-size:24px;">#include <ios ...
- TreeMap、HashMap、LindedHashMap的区别
LinkedHashMap可以保证HashMap集合有序.存入的顺序和取出的顺序一致.TreeMap实现SortMap接口,能够把它保存的记录根据键排序,默认是按键值的升序排序,也可以指定排序的比较器 ...
- 剑指offer31----栈的压入、弹出序列
题目:输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序.假设压入栈的所有数字均不相等.例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对 ...
- Java连接MQTT服务-wss方式
特别提示:本人博客部分有参考网络其他博客,但均是本人亲手编写过并验证通过.如发现博客有错误,请及时提出以免误导其他人,谢谢!欢迎转载,但记得标明文章出处:http://www.cnblogs.com/ ...
- 20191010-8 alpha week 1/2 Scrum立会报告+燃尽图 06
此作业要求参见:https://edu.cnblogs.com/campus/nenu/2019fall/homework/8751 一.小组情况组长:贺敬文组员:彭思雨 王志文 位军营 杨萍队名:胜 ...