DOM 文档对象模型 body:(什么时候)找到标签 操作标签
找到标签:(都会返回一个js对象)
document.getElementById() 通过id
document.getElementsByName() 通过name值
document.getElementsByTagName() 通过标签名
document.getElementsByClassName()通过class值
<button id="btn">id-btn</button>
<button >btn</button>
<button >btn</button>
<button >btn</button>

<script>
var btnDom = document.getElementsByTagName('button');
console.log(btnDom); //找出来的东西叫集合 类似是数组
for(var i in btnDom){ //用for in 遍历的时候 全出来了
if(isNaN(i)){ //需要判断非数字的跳过
continue;
}
console.log(btnDom[i]);
}
console.log('-----------------');
for(var i =0;i<btnDom.length;i++){ //这种遍历不用判断
console.log(btnDom[i]);
}
</script>

结合嵌套来找

节点操作
在对一些元素进行节点操作的时候需要通过对其父节点以及其他有关系的节点来进行相关设置,以下为部分层级关系的获取

元素.parentNode //获取父元素节点
元素.firstElementChild //获取第一个子节点,也有firstChild来获取的,但是存在bug
元素.children //获取所有子节点
元素.ownerDocument //获取该节点文档根节点
元素.previousElementSibling //获取当前节点的前一个同级节点
元素.nextElementSibling //获取当前节点的后一个同级节点

操作js对象 假设:obj里面存了一个js对象
内容:
非表单元素:obj.innerHTML(获取) obj.innerHTML=***(修改)
表单元素:obj.value obj.value=***

样式:
obj.style.color obj.style.color="red"
带有-的变成“-”后面首字母大写然后去掉“-”这种操作只能操作行内样式
属性:
obj.setAttribute('属性名','属性值');//覆盖性设置属性
obj.getAttribute('属性名');//得到属性值
obj.removeAttribute('属性名'); //删除属性
事件:
方式1:onclick属性
方式2:js中定义
obj.onclick=function(){

}(不可传参数)
方式3:
obj.addEventListener('click',f1)(不可传参数,可添加多种方法,删除时从最后一个删)

创建删除元素对象:
obj.remove();
document.createElement('标签名')创建,传回对象,没有内容没有属性,不在页面里
var bdobj=document.getElementsByTagName('body')[0];

bdobj.append(btnobj);使在页面显示

事件对象:
事件流:多个彼此嵌套元素,他们拥有相同的事件,最内部元素事件被触发后,外边多个元素的同类型事件也会被触发,多个元素他们同类型事件同时执行的效果称为“事件流”

获取事件对象:
node.onclick = function(evt){evt就是事件对象}
addEventListener(类型,function(evt){}/函数名字);
为兼容老版IE:var evnt = evt ? evt : window.event;
阻止事件流:
event.stopPropagation(); //主流浏览器

eval() 函数计算 JavaScript 字符串,并把它作为脚本代码来执行。

如果参数是一个表达式,eval() 函数将执行表达式。如果参数是Javascript语句,eval()将执行 Javascript 语句。

Option()构造函数接受两个参数:文本(text)和值(value);第二个参数可选.虽然这个构造函数会创建一个Object的实例,但是兼容DOM的浏览器会返回一个<option>元素。我们依然可以使用appendChild()将新的选项加到选择框中。例如:

var newOption = new Option("Option text","Option value");
selectbox.appendChild(newOption);
这种方式在除IE之外的浏览器都可以使用。由于存在BUG,IE在这种方式下不能正确设置新选项的文本。

跟随我在oracle学习php(12)的更多相关文章

  1. Oracle 学习笔记 12 -- 序列、索引、同义词

    版权声明:本文为博主原创文章.未经博主同意不得转载. https://blog.csdn.net/Topyuluo/article/details/24232449 数据库的对象包含:表.视图.序列. ...

  2. Oracle学习(12):存储过程,函数和触发器

    存储过程和存储函数 l存储在数据库中供全部用户程序调用的子程序叫存储过程.存储函数. 注意:存储过程与存储函数声明变量时,用的是as   而不是declare 存储过程与存储函数差别 存储过程不带有返 ...

  3. 跟随我在oracle学习php(8)

    JavaScript 是一种专为与网页交互而设计的脚本语言, javascript:特效 表单验证原理:什么时候,找到标签,什么时候,操作标签 使用<script>元素的方式有两种:直接在 ...

  4. 跟随我在oracle学习php(19)

    Order by子句 形式: order  by  排序字段1  [排序方式],  排序字段2  [排序方式], ..... 说明: 对前面取得的数据(含from子句,where子句,group子句, ...

  5. 跟随我在oracle学习php(18)

    修改表: 一般概述 通常,创建一个表,能搞定(做到)的事情,修改表也能做到.大体来说,就可以做到: 增删改字段: 增:alter  table  表名  add  [column]  字段名  字段类 ...

  6. 跟随我在oracle学习php(17)

    通用设定形式 定义一个字段的时候的类型的写法. 比如: create  table  tab1  (f1  数据类型 ); 数据类型: 类型名[(长度n)]  [unsigned]  [zerofil ...

  7. 跟随我在oracle学习php(16)

    数据库的增删改查 增:create  database  [if  not  exists ] 数据库名  [charset  字符集]  [collate  字符排序规则]: 说明: 1,if  n ...

  8. 跟随我在oracle学习php(15)

    开发环境 独立开发环境:组成 Windows/Linux php Apache MySQL 集成开发环境:phpstudy wamp xammp 关系数据库: SQL: Struct Query La ...

  9. 跟随我在oracle学习php(14)

    CSS3的@keyframes用法详解: 此属性与animation属性是密切相关的,关于animation属性可以参阅CSS3的animation属性用法详解一章节. 一.基本知识: keyfram ...

随机推荐

  1. cent OS 7查询IP

    环境: win7旗舰版 VMware Workstation Pro (虚拟机软件) CentOS-7-x86_64-DVD-1804.iso 安装时选择了默认配置,最小系统安装. 安装好后用  if ...

  2. 深入理解泛型之JAVA泛型的继承和实现、泛型擦除

    很多的基础类设计会采用泛型模式,有些应用在使用的时候处于隔离考虑,会进行继承,此时子类如何继承泛型类就很讲究了,有些情况下需要类型擦除,有些情况下不需要类型擦除,但是大多数情况下,我们需要的是保留父类 ...

  3. python 包 笔记

    绝对导入和相对导入 我们的最顶级包glance是写给别人用的,然后在glance包内部也会有彼此之间互相导入的需求,这时候就有绝对导入和相对导入两种方式: 绝对导入:以glance作为起始 相对导入: ...

  4. bzoj 3597 [Scoi2014] 方伯伯运椰子 - 费用流 - 二分答案

    题目传送门 传送门 题目大意 给定一个费用流,每条边有一个初始流量$c_i$和单位流量费用$d_i$,增加一条边的1单位的流量需要花费$b_i$的代价而减少一条边的1单位的流量需要花费$a_i$的代价 ...

  5. word模板导出的几种方式:第三种:标签替换(DocX组件读取与写入Word)

    dll文件下载地址:https://files-cdn.cnblogs.com/files/daizhipeng/DocX.rar DocX wordDocumentOld = DocX.Load(S ...

  6. Python3 tkinter基础 Scrollbar pack 创建靠右、充满Y轴的垂直滚动条

             Python : 3.7.0          OS : Ubuntu 18.04.1 LTS         IDE : PyCharm 2018.2.4       Conda ...

  7. OS X EI Captain 下解决 There was a problem confirming the ssl certificate 问题

    参考: Problem Confirming the SSL Certificate - OSX OS X EI Captain 下解决 There was a problem confirming ...

  8. Zynq PS和PL间的连接

    跨越PS和PL的信号 AXI总线.EMIO.其他(看门狗.重启信号.中断信号.DMA接口信号) AXI标准 AXI(高级可扩展接口)是ARM AMBA的一部分.AMBA总线主要用于片上系统.AXI总线 ...

  9. unittest用例执行的顺序

    unittest在执行用例(test_xxx)时,并不是按从上到下的顺序执行,有特定的顺序. 示例: import unittest class TestBdd(unittest.TestCase): ...

  10. 区块链 编译android geth 填坑记录 ubuntu

    下载geth 源码  直接 make android 下载android ndk sdk 配置环境变量cd 安装golang  设置环境变量 发现没有gomobile命令 按照wiki方法 执行安装g ...