学习WEBAPI第一天
WebApi: 通过操作对象来实现操作标签的目的
Dom:操作页面 Bom:操作浏览器的
学习目标:
一、DOM 中常用的操作
1、获取元素
2、对元素进行操作(设置其属性或调用方法)
3、动态创建元素
4、给元素注册事件
二、doucument对象
三、获取元素
1、getElementsByTagName("标签名")
结果: 返回一个伪数组,包含符合条件的所有元素
2、getElementById('id名') 通过id获取元素
结果:返回的就是那个对应的元素,如果找不到就返回一个空的伪数组
3、总结:
(1)批量获取:document/element.getElementsByTagName('标签名')
结果:返回一个伪数组,如果找不到返回空的伪数组
(2)通过id获取:
document.getElementById('id名')
结果:返回具体的元素,找不到返回null
小结:通过document这个对象调用获取元素的方法
getElementById 返回的是对应的DOM元素, 如果没有返回null
getElementsByTagName 返回的是存储DOM元素的伪数组,如果没有返回空的伪数组
四、注册事件
注册事件的语法: 元素.on事件名 = 函数;
一、事件的三要素:
(1)、事件源: 给谁注册事件,谁就是事件源
(2)、事件名: 要注册什么事件,那个就是是事件名,点击事件的事件名是: click
(3)、事件处理函数: 事件触发的时候会被调用的函数
二、给a标签注册点击事件需要注意:
(1)、由于a标签的超链接功能,默认会刷新页面/跳转页面
在事件处理函数的最后一行,写一个truern falese
可以阻止a标签的默认刷新/跳转页面行为
三、总结:通过id获取元素注册点击事件,添加事件处理函数
五、操作元素的属性
1、元素名.innerText 返回元素里面的所有的文本,赋值时(不会识别标签)
2、元素名.innerHTML 返回元素里面的所有内容,赋值时(会识别标签,把标签直接渲染出来)
注意:凡是成对的标签,中间文本内容,设置的时候都可以用
3、元素名.id = "xx" 修改元素的内容
4、this 再某个元素的事件中,自己的事件中的this就是当前这个元素
六、当页面加载完时,script代码已经执行完(已经给每个元素注册事件),
当触发事件时,才会执行事件处理函数
七、表单标签和属性
一、标签
1、text:文本框
2、button:按钮
3、 这是下拉菜单 :鼠标点击下拉菜单
4、 这是内容content 注册协议框
二、属性
1、selected :代表选中按钮的意思,布尔类型
2、disabled :禁用的意思
3、readonly:只读的意思
八、注意事项
1、凡是css中这个属性是多个单词的写法,在JS代码中的DOM操作时候把 - 干掉
后面单词首字母大写即可
2、在表单标签中,如果属性和值只有一个,并且是属性本身,那么再写JS
代码DOM操作的时候,这个属性值,是布尔类型就可以
九、总结
DOM:把页面上的标签抽象成对象,在js中通过操作对象,实现操作页面上的标签目的
元素:在html中
获取元素:
document.element.getElementsByTabName('标签名') 返回一个伪数组,如找不到返回空的伪数组
document.getElementById('id名') 返回符合条件的那个元素,如找不到返回null
获取body:document.body
获取HTML: document.documentElement
事件: 点击事件 click
事件源: 给谁注册事件,谁就是事件源
事件处理函数:出发事件时,调用的函数
事件源.on + 事件名 = 事件处理函数:出发事件时
操作元素的属性:
innerText
innerHTML
相同点:都会覆盖原来的内容
不同点:innerText 只识别文本
innerHTML 可以识别标签
注意: 一般用于双标签
学习WEBAPI第一天的更多相关文章
- RabbitMQ学习总结 第一篇:理论篇
目录 RabbitMQ学习总结 第一篇:理论篇 RabbitMQ学习总结 第二篇:快速入门HelloWorld RabbitMQ学习总结 第三篇:工作队列Work Queue RabbitMQ学习总结 ...
- 学习KnockOut第一篇之Hello World
学习KnockOut第一篇之Hello World 笔者刚开始学习KnockOut.写的内容就相当于一个学习笔记.且在此处向官网致敬,比较喜欢他们家的Live Example版块,里面有jsFiddl ...
- ActionBarSherlock学习笔记 第一篇——部署
ActionBarSherlock学习笔记 第一篇--部署 ActionBarSherlock是JakeWharton编写的一个开源框架,使用这个框架,可以实现在所有的Android ...
- Java学习记录第一章
学习Java第一章的记录,这一章主要记录的是Java的最基础部分的了解知识,了解Java的特性和开发环境还有Java语言的优缺点. 计算机语言的发展大概过程:机器语言--->汇编语言---> ...
- oracle学习笔记第一天
oracle学习笔记第一天 --oracle学习的第一天 --一.几个基础的关键字 1.select select (挑选) 挑选出显示的--列--(可以多列,用“,”隔开,*表示所有列),为一条 ...
- javascript的ES6学习总结(第一部分)
ES6(ESNext学习总结——第一部分) ES6, 全称 ECMAScript 6.0 ,是 JavaScript 的下一个版本标准,2015.06 发版. ECMA每年6月份,发布一个版本 201 ...
- Web基础学习---HTML 第一天
Web基础学习---HTML 第一天 1 HTML标签 2.CSS Web开发基础HTML好吧离开Python几天...如何学好前端?? 多去看别人的网站.多看.多写.多练,(知乎.36Kr.)多练就 ...
- QT学习之第一个程序
QT学习之第一个程序 目录 手动创建主窗口 居中显示 添加窗口图标 显示提示文本 Message Box的应用 手动连接信号与槽 手动创建主窗口 窗口类型 QMainWindow: 可以包含菜单栏.工 ...
- 创芯Xilinx Microblaze 学习系列第一集
创芯Xilinx Microblaze 学习系列第一集 Xilinx ISE Design Suite 13.2 The MicroBlaze™ embedded processor soft cor ...
随机推荐
- 单页面应用的History路由模式express后端中间件配合
这篇文章主要分享一下通过HTML5的history API的时候,使用NodeJS后端应该如何配置,来避免产生404的问题,这里是使用的express的框架,主要是通过connect-history- ...
- SpringBoot第二十四篇:应用监控之Admin
作者:追梦1819 原文:https://www.cnblogs.com/yanfei1819/p/11457867.html 版权声明:本文为博主原创文章,转载请附上博文链接! 引言 前一章(S ...
- Python和Sublime安装教程
Python安装 安装python可以去https://www.python.org官网下载 点开官网后点击下图我圈出来的地方 然后翻到页面最后,选择要安装的版本 点击下载后打开,将 Add Pyt ...
- CodeForces 1084 F Max Mex
Max Mex 题意:问在树上的所有路中mex值最大是多少. 题解: 用线段树维护值. 区间[L,R]意味着 区间[L,R]的数可不可以合并. 重点就是合并的问题了. 首先合法的区间只有3种: 1. ...
- 2018湖南多校第二场-20180407 Column Addition
Description A multi-digit column addition is a formula on adding two integers written like this:
- 利用PIL库创建空白图像
背景 最近,想自己生成带位置坐标的文字数据集来训练文本位置探测网络. 理想情况是,给文字加盐噪声,背景不需要加噪声,所以需要创建一个空白的背景.将文字放在空白背景上,然后利用opencv加噪声. 解决 ...
- sed一些常用命令
[转] http://blog.chinaunix.net/uid-20754793-id-177657.html 下面是我学习sed时参照参考书总结的一些常用sed命令,基本上每条语句都进行了调试1 ...
- 201871010134-周英杰《面向对象程序设计(java)》第二周学习总结
项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https://www.cnblogs.com/nwnu-daizh/p ...
- python控制台简单实现五子棋
#棋盘#落子#规则import randomclass chess: def __init__(self): print('#---------------棋盘----------------#') ...
- Java SSM三端分离开发在线教育平台实战视频教程
目录: 1-01——在线网校实战课程介绍1-02——Eclipse.Maven.JDK介绍1-03——Maven构建Project1-04——新浪SAE介绍2-01——平台业务结构概览2-02——平台 ...