day048 BOM和DOM
BOM Browser Object Model(文档对象模型)
> window对象
1、alert 弹出带有提示和一个确认按钮的警示框
2、confirm 弹出带有一个提示和一个确认按钮一个取消按钮的对话框
3、promt 弹出提示用户输入的对话框
>计时器
每隔一会儿就会执行一次某个动作
设置计时器 setInterval(fun,time)
取消计时器 clearInterval(id)
>跳转
location.href #获取当前网页的url
location.search #获取url的数据部分,即?号后面的内容
location.href = url #跳到指定的url去 (url不能省略协议名)
DOM Document Object Model(文档对象模型)
> dom树结构
> dom对象
主要是两种: document对象(文档对象)和element对象(元素对象)
> 查找标签
两种方式:
1、直接查找 根据id、class、标签名、自定义名 来查找
主要方法
document.getElementById() #通过id查找,得到一个元素对象
document.getElementsByClassName() #通过类名查找,得到一个元素对象数组
document.getElementsByTagName() #通过标签名查找,得到一个元素对象数组
document.getElementsByName() #通过自定义名查找,得到一个元素对象数组
2、导航查找
通过一个已定位的元素的查找其他元素
nextElementSibling #下一个兄弟节点标签
previousElementSibling #上一个兄弟节点标签
children #儿子节点标签
firstElementChild #第一个儿子节点标签
lastElementchild #最后一个儿子节点标签
>事件绑定
ele.on事件 = function(){ }
>文本操作
1、获取文本
ele.innerHTML #文本和标签都能取到
ele.innerText #只取文本
2、赋值文本
ele.innerHTML="<a href=' ' >123</a>" # 赋的值可以作为标签处理
ele.innerText = "<a href=' ' >123</a>" #赋的值只作为纯文本处理
>属性操作
ele.setAttribute() #设置一个属性
ele.getAttribute() #拿一个属性的值
ele.removeAttribute() #移除一个属性
>class属性操作
ele.classList.add() #ele标签中class属性添加一个值
ele.classList.remove() #ele标签中class属性移除一个值
>css操作
通过调style
ele.style.color = 'red'
ele.style.fontSize = '32px'
>value属性操作
主要用于input, select, textarea 标签
ele.value #查询value值
ele.value="值" #添加value值
>节点的增删改查
1、创建节点对象
let ele = document.createElement("标签名")
ele.setAttribute() #给标签对象设置属性
2、添加节点
父节点.appendChild( newnode )
父节点.insertChild(bewnode,某个节点) #在某个节点前添加新节点
注意:
如果文档树中已经存在了 newchild,它将从文档树中删除,
然后重新插入它的新位置。如果 newchild 是 DocumentFragment 节点,则不会直接插入它,
而是把它的子节点按序插入当前节点的 childNodes[] 数组的末尾。
所以,同一个节点对象只能在文档中出现一次。
3、删除节点
父节点.removeChild(节点)
4、替换节点
父节点.replaceChild(newnode, 某个节点)
>事件
onfocus #获取光标
onblur #失去光标
onselect #选中文本
onload #页面或图像加载完成,也可以等某个线程完成
onsubmit #提交
onchange #内容替换事件(下列框,文件选择框)
onmousedown #鼠标按钮被按下
onmousemove #鼠标移动
onmouseout #鼠标从某个元素移开
onmouseover #鼠标移到某个元素上
onmouseleave #鼠标从某个元素移开(一般用这个)
onkeydown #某个按键被按下
onkeypress #某个键盘按键被按下并松开
onkeyup #某个键盘按键被松开
day048 BOM和DOM的更多相关文章
- BOM,DOM,ECMAScripts三者的关系
一:DOM 文档对象模型(DOM)是表示文档(比如HTML和XML)和访问.操作构成文档的各种元素的应用程序接口(API) DOM是HTML与JavaScript之间沟通的桥梁. DOM下,HTM ...
- BOM和DOM的区别和关联
BOM 1. BOM是Browser Object Model的缩写,即浏览器对象模型. 2. BOM没有相关标准. 3. BOM的最根本对象是window. 从1可以看出来:BOM和浏览器关系密切. ...
- 实现JavaScript的组成----BOM和DOM
我们知道,一个完整的JavaScript的实现,需要由三部分组成:ECMAScript(核心),BOM(浏览器对象模型),DOM(文档对象模型). 今天主要学习BOM和DOM. BOM: BOM提供了 ...
- BOM和DOM详解
DOM介绍 D(文档)可以理解为整个Web加载的网页文档,O(对象)可以理解为类似window对象只来的东西,可以调用属性和方法,这里我们说的是document对象,M(模型)可以理解为网页文档的树形 ...
- JS中的函数、Bom、DOM及JS事件
本期博主给大家带来JS的函数.Bom.DOM操作,以及JS各种常用的数据类型的相关知识,同时,这也是JavaScript极其重要的部分,博主将详细介绍各种属性的用法和方法. 一.JS中的函数 [函数的 ...
- 从零开始的JS生活(二)——BOM、DOM与JS中的事件
上回书说道,JS中变量.运算符.分支结构.循环和嵌套循环等内容.本回就由本K给大伙唠唠JS中的BOM.DOM和事件. 一."花心大萝卜"--BOM 1.震惊,FFF团为何对BOM举 ...
- 前端之BOM和DOM
BOM和DOM简介 BOM(Browser Object Model)是指浏览器对象模型,它使JavaScript有能力与浏览器进行“对话”. DOM(Document Object Model)是指 ...
- BOM和DOM的区别
一.BOM和DOM之间的关系图 window对象是BOM的顶层(核心)对象,所有对象都是通过它延伸出来的,也可以称为window的子对象由于window是顶层对象,因此调用它的子对象时可以不显示的指明 ...
- 前端基础之BOM和DOM
关于网页交互:BOM和DOM javaScript分为ECMAScript,DOM,BOM . BOM(Browser object Model)是指浏览器对象模型,它使JavaScript有能力 ...
随机推荐
- mybatis入门--配置
1.导入jar包 mybatis-x.x.x.jar 导入到lib目录下, 如果使用 Maven 来构建项目,则需将下面的 dependency 代码置于 pom.xml 文件中: <depen ...
- ES6 Reflect 与 Proxy
概述 Proxy 与 Reflect 是 ES6 为了操作对象引入的 API . Proxy 可以对目标对象的读取.函数调用等操作进行拦截,然后进行操作处理.它不直接操作对象,而是像代理模式,通过对象 ...
- ORA-00444: background process DBRM failed while starting
SQL> startup 报错:ORA-00444: background process DBRM failed while startingORA-00020:maximum number ...
- Cocos Creator Slider(进度条)的三种实现
实现原理: 方法一:动态计算,slider上增加背景图,根据滑动的进度动态计算背景图的大小:方法二:slider+progress,根据slider滑动的进度,动态改变progress的显示进度:方法 ...
- C语言进阶之路(一)----C语言的内存四区模型
内存四区模型:操作系统给C/C++编写的程序分配内存,通常将分配的内存划分为以下四个区域:1.栈区:存放局部变量,用完由操作系统自动释放2.堆区:动态分配给程序的内存区域,由程序员手动释放3.数据区: ...
- C#中MemoryStream类的介绍
MemoryStream位于System.IO命名空间,为系统内存提供流式的读写操作.常作为其他流数据交换时的中间对象操作. 1.MemoryStream类封装一个字节数组,在构造实例时可以使用一个字 ...
- [macOS] PHP双版本,5.6跟7.1
转过来的,原文看这里,https://www.symfony.fi/page/how-to-run-both-php-5-6-and-php-7-x-with-homebrew-on-os-x-wit ...
- ArchLinux安装Sublime Text 3
安装方法: 在 /etc/pacman.conf中添加 [archlinuxcn] SigLevel = Optional TrustAll Server = http://repo.archlinu ...
- week_one-python基础 列表 增删改查
# Author:larlly #列表增删改查#定义列表name = ["wo","ni","ta","wo"] #定义 ...
- Docker Kubernetes hostPort 代理转发
Docker Kubernetes hostPort 代理转发 hostPort: 1. 类似docker -p 映射宿主级端口到容器. 2. 容器所在的主机暴露端口转发到指定容器中. 3. hos ...