今日知识

1. Dom(文档对象模型)
2. Bom(浏览器对象模型)
3. 总结

Dom

1. 获取id为div1的元素对象。
* var result=document.getElementById("div1");
//获取元素内容
var x=result.innerHTML;
2. 通过标签名称查找HTML元素
* var result=document.getElementByTagName("p");
* 有多个P标签时,返回的数组形式
3. 通过类名查找Html元素
* var result=document.getElementByClassName("类名称");
* 有多个类名称相同标签时,返回的数组形式
4. 改变元素属性:var result=document.getElementById("div1");
* result.setAttribute("属性名","新的属性值");
* 或者 result.属性名="新的属性值";
5. 修改css元素
* 元素对象.style.属性=新的值;
6. DOM事件
1. 鼠标事件
1. onclick 当用户点击某个对象时调用的事件句柄。
2. ondblclick 当用户双击某个对象时调用的事件句柄。
3. onmousedown 鼠标按钮被按下。
* 定义方法时,定义一个形参,接受event对象。
* event对象中的button属性可以获取那个鼠标被点击了
4. onmousemove 鼠标被移动。 //和下面类似
5. onmouseover 鼠标移到某元素之上。
6. onmouseout 鼠标从某元素移开。
7. onmouseup 鼠标按键被松开。
//tr颜色改变,this代表当前触发的对象
var tr = document.getElementsByTagName("tr");
for (var i=0;i<tr.length;i++){
tr[i].onmouseover = function () {
this.style.background="#00ff00";
}
tr[i].onmouseout = function () {
this.style.background="#ffffff";
// alert(22)
}
}
2. 框架和对象事件Object
onload 一张页面或一幅图像完成加载。
3. 表单事件
1. onblur 元素失去焦点
2. onfocus 元素获得焦点。
3. onsubmit 确认按钮被点击。 //如果返回false,表单不会被提交
4. onselect 文本被选中。( <input> 和 <textarea>)
5. onchange 域的内容被改变。 ( <input>, <select>, 和 <textarea>)
4. 键盘事件
1. onkeydown 某个键盘按键被按下。
2. onkeypress 某个键盘按键被按下并松开。
3. onkeyup 某个键盘按键被松开。 * <p id="p1">
这是一段文字。。。。。
</p>
<button onclick="change()">点我改变文本属性</button>
<script>
function change() {
document.getElementById("p1").innerHTML="click事件触发,调用函数改变该方法";
}
</script>
7. DOM节点(动态添加和删除HTML元素)
* //获取对象元素
var p=document.getElementById("div1");
//获取要移除的对象
var box=document.getElementById("con");
var box=document.createElement("div");
p.removeChild(box);
//类似剪切到目标节点上
p.appendChild(box);
p.parentNode//获取p的父节点对象
p.childNode//获取p的子节点
p.childNodes//获取p的所有子节点
1. 文本节点(没有任何标签修饰)
* 文本节点的nodeName:永远是#text
* nodeValue是属性包含的文本
* nodeType=3
2. 属性节点(style等等)
* 文本节点的nodeName:是属性名称
* nodeValue是属性包含的属性值
* nodeType=2
3. 元素节点(各种标签)
* 文本节点的nodeName:是标签名称
* nodeValue是不可用
* nodeType=1
* 注意:对 firstChild 最普遍的用法是访问某个元素的文本: childNode.firstChild.nodeValue
4. 文档节点
* 文本节点的nodeName:永远是#document
* nodeValue是不可用
* nodeType=9
* 节点的克隆
//用克隆的为方法
var clone=game.cloneNode(true);//那么 会克隆源节点的所有节点
bj.parentNode.replaceChild(clone,bj);

BOM

1. Window:浏览器窗口对象
* window是一个全局对象,不需要创建(调用下面方法window可以不写,直接用)
* var width=window.innerWidth;
var heigth=window.innerHeight;
document.write("浏览器的宽度:"+width+",浏览器 的高度"+heigth);
* window.open("http://ww.baidu.com") - 打开新窗口 ,返回一个新的window对象
* window.close() - 关闭当前窗口
* 谁调用我 ,我关谁,可以把新创建的窗口对象用一个变量接收,该变量调用close()方法即可关闭,新打开的页面
* window.moveTo() - 移动当前窗口
* window.resizeTo() - 调整当前窗口的尺寸
* window.confirm("sometext");
当你点击 "确认", 确认框返回 true, 如果点击 "取消", 确认框返回 false。
window.confirm() 方法可以不带上window对象,直接使用confirm()方法。
* window.prompt("sometext","defaultvalue");
如果用户点击确认,那么返回值为输入的值。如果用户点击取消,那么返回值为 null。用一个变量来接收你输入的值。
1.1 定时器
1. setTimeout() :在指定时间后调用该方法,只调用一
* 参数:js代码或者方法对象,第二个参数是毫秒值
clearTimeout(需要定时器的返回值) 取消由 setTimeout() 方法设置的 timeout。
* 返回值:返回一个唯一标识,用于取消定时器
2. setInterval():参数和上面一样,按指定时间一直调用
clearInterval() 取消由 setInterval() 设置的 timeout。
2. Screen:屏幕对象
1. var width=screen.availWidth();//获取屏幕的可用宽
2. var height=screen.availHeight();//获取屏幕的可用高
3. Locaton:位置对象
1. location.href="http://www.cskaoyan.com";//重定向到其他yemian
2. location.reload();//重新加载当前页面
3. host 返回一个URL的主机名和端口
4. hostname 返回URL的主机名
5. href 返回完整的URL //不赋值的话,可以直接获取当前的url,赋值的话代表将要跳转的地址
4. History:历史记录对象(onclicks属性中用)
1. back() 加载 history 列表中的前一个 URL
2. forward() 加载 history 列表中的下一个 URL
3. go() 加载 history 列表中的某个具体页面
5. Navigator:浏览器对象
1. appCodeName 返回浏览器的代码名
2. appName 返回浏览器的名称
3. appVersion 返回浏览器的平台和版本信息
4. cookieEnabled 返回指明浏览器中是否启用 cookie 的布尔值
5. platform 返回运行浏览器的操作系统平台
6. userAgent 返回由客户机发送服务器的user-agent 头部的值

09-JavaScript高级的更多相关文章

  1. javascript高级特性

    01_javascript相关内容02_函数_Arguments对象03_函数_变量的作用域04_函数_特殊函数05_闭包_作用域链&闭包06_闭包_循环中的闭包07_对象_定义普通对象08_ ...

  2. javascript高级特性(面向对象)

    javascript高级特性(面向对象): * 面向对象: * 面向对象和面向过程的区别: * 面向对象:人就是对象,年龄\性别就是属性,出生\上学\结婚就是方法. * 面向过程:人出生.上学.工作. ...

  3. 读书时间《JavaScript高级程序设计》一:基础篇

    第一次看了<JavaScript高级程序设计>第二版,那时见到手上的书,第一感觉真是好厚的一本书啊.现在再次回顾一下,看的是<JavaScript高级程序设计>第三版,并记录一 ...

  4. javascript高级实战学习

    学习目标: - 理解面向对象开发思想 - 掌握 JavaScript 面向对象开发相关模式 - 掌握在 JavaScript 中使用正则表达式 - typora-copy-images-to medi ...

  5. javaScript高级含Es6

    JavaScript高级第01天笔记 1.面向过程与面向对象 1.1面向过程 面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候再一个一个的依次调用就可以了. 1.2 ...

  6. 《JavaScript高级程序设计(第3版)》笔记-序

    很少看书,不喜欢看书,主要是上学时总坐不住,没有多大定性,一本书可以两天看完,随便翻翻,也可以丢在角落里几个月不去动一下. 上次碰到了<JavaScript高级程序设计(第3版)>感觉真的 ...

  7. 《JavaScript高级程序设计(第3版)》阅读总结记录第一章之JavaScript简介

    前言: 为什么会想到把<JavaScript 高级程序设计(第 3 版)>总结记录呢,之前写过一篇博客,研究的轮播效果,后来又去看了<JavaScript 高级程序设计(第3版)&g ...

  8. 【javascript学习——《javascript高级程序设计》笔记】DOM操作

    DOM(文档对象模型)是针对HTML和XML文档的一个API(应用程序编程接口).DOM描绘了一个层次节点树,允许开发人员添加.移除和修改. 1.节点层次 <html> <head& ...

  9. 读javascript高级程序设计00-目录

    javascript高级编程读书笔记系列,也是本砖头书.感觉js是一种很好上手的语言,不过本书细细读来发现了很多之前不了解的细节,受益良多.<br/>本笔记是为了方便日后查阅,仅作学习交流 ...

  10. 《JavaScript高级程序设计》读书笔记--前言

    起因 web编程过程使用javascript时感觉很吃力,效率很低.根本原因在于对javascript整个知识体系不熟,看来需要找些书脑补一下,同时欢迎众网友监督. 大神推荐书籍 看了博客大神们推荐的 ...

随机推荐

  1. nodejs要远程连接另一个主机上的monogodb数据库服务器

    我的mongodb是装在linux下的. 首先,先添加用户 1.首先在mongodb服务器主机上进行terminal命令行,输入 mongo 2.输入 use admin 进入用户管理数据库 3.db ...

  2. sql server 查询数据判断为空

    and xxx is NOT null and xxx is null

  3. Java通过接口实现匿名类的实例

    package com.chase.test; /** * 通过接口实现匿名类的实例 * * @author Chase * * @date 2013-10-18 下午04:28:17 * * @ve ...

  4. matlab学习菜单控件的基本用法

    编辑菜单项 上下文菜单,即弹出菜单 然后添加一个坐标系 添加回调函数 %余弦曲线x=0:0.01:2*pi;y=cos(x);axes(handles.axes1);%将坐标系的值写进h=plot(x ...

  5. PAT_A1144#The Missing Number

    Source: PAT A1144 The Missing Number (20 分) Description: Given N integers, you are supposed to find ...

  6. appium滑动

    在app应用日常使用过程中,会经常用到在屏幕滑动操作.如刷朋友圈上下滑操作.浏览图片左右滑动操作等.在自动化脚本该如何实现这些操作呢? 在Appium中模拟用户滑动操作需要使用swipe方法,该方法定 ...

  7. [Ynoi2016]谁的梦

    题目大意: 给定$n$个序列,要你从每个序列中选一个非空子串然后拼起来,拼成的序列的贡献为不同元素个数. 支持单点修改,在开始时和每次修改完后,输出所有不同选取方案的贡献和. 解题思路: 窝又来切Yn ...

  8. [luogu4159 SCOI2009] 迷路(矩阵乘法)

    传送门 Solution 矩阵乘法新姿势qwq 我们知道当边权为1是我们可以利用矩阵快速幂来方便的求出路径数 那么对于边权很小的时候,我们可以将每个点都拆成若干个点 然后就将边权不为1转化为边权为1了 ...

  9. javascript中创建新节点的方法 标签: javascript 2016-12-25 11:38 55人阅读 评论(0)

    一. var newnode=document.createElement("i"); var newnodeText=document.createTextNode(" ...

  10. Vue CLI 3 中文文档

    翻译文档 文档翻译全貌 前言 之前写了一篇Vue CLI 3.x 版本的简单体验,当时文档还不全,具体的使用方法并不是很清楚,大概是2月7号,收到Vue CLI 3接近Beta版的提示,作者尤雨溪也讲 ...