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有能力 ...
随机推荐
- Spring Boot 入门day01
一.Spring Boot入门 1.Spring Boot简介 Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特 ...
- python框架之Flask(2)-路由和视图&Session
路由和视图 这一波主要是通过看源码加深对 Flask 中路由和视图的了解,可以先回顾一下装饰器的知识:[装饰器函数与进阶] 路由设置的两种方式 # 示例代码 from flask import Fla ...
- python之数据库连接池DBUtils
DBUtils 是Python 的一个用于实现数据库连接池的模块. 此连接池有两种连接模式: DBUtils :提供两种外部接口: PersistentDB :提供线程专用的数据库连接,并自动管理连接 ...
- js之prototype 原型对象
原型对象prototype可以这么理解,是该类的实例对象的模板,每个实例对象都是先复制一份该类的prototype,通过这个可以让类的实例拥有相同的功能 String.prototype.say= ...
- eclipse打包jar包
项目右键 选择Export 选择java文件夹 选择 JAR file选择包,类,选择导出路径然后 Finish
- 20175211 2018-2019-2 《Java程序设计》第四周学习总结
目录 教材学习内容总结 第五章 子类与继承 教材学习中的问题和解决过程 代码调试中的问题和解决过程 代码托管 上周考试错题总结 其他(感悟.思考等,可选) 学习进度条 参考资料 教材学习内容总结 第五 ...
- Python学习笔记(1)__name__变量
这是我在网上找到的一篇文章的标题. 本着学会了才是自己的,所以标题不变,自己试着再写一遍. 问题:__name__是什么? 背景:在学习编程规范的时候,我被要求函数的调用只能在__main()函数中使 ...
- js页面路径拼接字符串进行参数传递
页面路径拼接字符串进行参数传递: 参数传递页面: <style> input,button{ border: 1px solid red; } body { font-size:24px; ...
- 字典排序 sorted
a = {6:2,8:0,1:4,-5:6,99:11,4:22} print( sorted(a.items()) ) #默认安照key排序的print( sorted(a.items(),key= ...
- jmeter如何玩?
ApacheJMeter是Apache组织开发的基于Java的压力测试工具.用于对软件做压力测试,它最初被设计用于Web应用测试但后来扩展到其他测试领域. 它可以用于测试静态和动态资源例如静态文件.J ...