跟随我在oracle学习php(12)
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)的更多相关文章
- Oracle 学习笔记 12 -- 序列、索引、同义词
版权声明:本文为博主原创文章.未经博主同意不得转载. https://blog.csdn.net/Topyuluo/article/details/24232449 数据库的对象包含:表.视图.序列. ...
- Oracle学习(12):存储过程,函数和触发器
存储过程和存储函数 l存储在数据库中供全部用户程序调用的子程序叫存储过程.存储函数. 注意:存储过程与存储函数声明变量时,用的是as 而不是declare 存储过程与存储函数差别 存储过程不带有返 ...
- 跟随我在oracle学习php(8)
JavaScript 是一种专为与网页交互而设计的脚本语言, javascript:特效 表单验证原理:什么时候,找到标签,什么时候,操作标签 使用<script>元素的方式有两种:直接在 ...
- 跟随我在oracle学习php(19)
Order by子句 形式: order by 排序字段1 [排序方式], 排序字段2 [排序方式], ..... 说明: 对前面取得的数据(含from子句,where子句,group子句, ...
- 跟随我在oracle学习php(18)
修改表: 一般概述 通常,创建一个表,能搞定(做到)的事情,修改表也能做到.大体来说,就可以做到: 增删改字段: 增:alter table 表名 add [column] 字段名 字段类 ...
- 跟随我在oracle学习php(17)
通用设定形式 定义一个字段的时候的类型的写法. 比如: create table tab1 (f1 数据类型 ); 数据类型: 类型名[(长度n)] [unsigned] [zerofil ...
- 跟随我在oracle学习php(16)
数据库的增删改查 增:create database [if not exists ] 数据库名 [charset 字符集] [collate 字符排序规则]: 说明: 1,if n ...
- 跟随我在oracle学习php(15)
开发环境 独立开发环境:组成 Windows/Linux php Apache MySQL 集成开发环境:phpstudy wamp xammp 关系数据库: SQL: Struct Query La ...
- 跟随我在oracle学习php(14)
CSS3的@keyframes用法详解: 此属性与animation属性是密切相关的,关于animation属性可以参阅CSS3的animation属性用法详解一章节. 一.基本知识: keyfram ...
随机推荐
- js中创建对象的4种方法
1.直接创建,不可复用式创建var obj = new Object(); obj.name = ""; obj.id = ""; 2.使用工厂方法来创建对象, ...
- php伪造ip头
<? $fp = fsockopen ("passport.baidu.com", 80, $errno, $errstr, 30); if (!$fp) { echo &q ...
- ThreadLocal的意义和实现
可以想像,如果一个对象的可变的变量被多个线程访问时,必然是不安全的. 在单线程应用可能会维持一个全局的数据库连接,并在程序启动时初始化这个连接对象,从而避免在调用每个方法时都传递一个Connectio ...
- caffe特征层可视化
#参考1:https://blog.csdn.net/sushiqian/article/details/78614133#参考2:https://blog.csdn.net/thy_2014/art ...
- 读Vue源码二 (响应式对象)
vue在init的时候会执行observer方法,如果value是对象就直接返回,如果对象上没有定义过_ob_这个属性,就 new Observer实例 export function observe ...
- Pormise
//Pormisefunction MyPromise (executor) { var self = this self.status = 'pending' self.resolveValue = ...
- JS的Date对象、Math、包装类
Date对象 在JS使用Date对象来表示时间 当前时间 var d = new Date(); 指定时间 格式:月/日/年 时:分:秒 var e = new Date("02/16/ ...
- VS 编译错误【error C4996: 'scanf': This function or variable may be unsafe. 】的解决方案
在VS中编译 C 语言项目,如果使用了 scanf 函数,编译时便会提示如下错误: error C4996: 'scanf': This function or variable may be uns ...
- node中redis重连
项目node中用到redis ,做了的moudle,但是有个问题,两台redis,一台挂了,redis能自动切换,我的项目却不会自动重连: 查了资料,redis本身是实现了重连机制啊,为什么不自动重连 ...
- 实验七 《FBG》—-小学生课后习题答案原型设计
一.实验目的与要求 1.掌握软件原型开发技术 2.学习使用软件原型开发工具 二.实验内容与步骤 1.开发工具: 使用的工具:墨刀(APP端开发原型) 工具简介: 墨刀(MockingBot)是一款简单 ...