javascript高级语法二
一、BOM对象
1、什么是BOM对象?
BOM是浏览器对象模型,核心对象就是window,所有浏览器都支持 window 对象。一个html文档对应一个window对象,主要功能是控制浏览器窗口的, window对象不需要创建对象,直接使用即可。
2、window对象的使用方法:
alert() 显示带有一段消息和一个确认按钮的警告框。
confirm() 显示带有一段消息以及确认按钮和取消按钮的对话框。
prompt() 显示可提示用户输入的对话框。
open() 打开一个新的浏览器窗口或查找一个已命名的窗口。
close() 关闭浏览器窗口。
setInterval() 按照指定的周期(以毫秒计)来调用函数或计算表达式。
clearInterval() 取消由 setInterval() 设置的 timeout。
setTimeout() 在指定的毫秒数后调用函数或计算表达式。
clearTimeout() 取消由 setTimeout() 方法设置的 timeout。
scrollTo() 把内容滚动到指定的坐标。
二、DOM节点
1、什么是DOM?
DOM是文档对象模型,HTML 文档中的每个成分都是一个节点。
2、节点的分类
元素节点:其实就是标签
文本节点:其实就是标签所要表达的内容
属性节点:其实就是标签内的属性
3、直接查找节点的方法
document.getElementById(“idname”)
document.getElementsByTagName(“tagname”) document.getElementsByName(“name”) document.getElementsByClassName(“name”)4、层次导航节点属性查找
parentElement // 父节点标签元素
children // 所有子标签
firstElementChild // 第一个子标签元素
lastElementChild // 最后一个子标签元素
nextElementtSibling // 下一个兄弟标签元素
previousElementSibling // 上一个兄弟标签元素
5、节点操作方法:
1、创建节点
createElement(标签名) :创建一个指定名称的元素。父节点.appendChild(创建的新节点名) 追加一个子节点(作为最后的子节点) 父节点.insertBefore(创建的新节点名,父节点下某个节点); 把增加的节点放到父节点下某个节点的前边父节点.removeChild() :先获得要删除的节点,然后通过父节点来删除父节点下的子节点父节点.replaceChild(创建的新节点, 父节点下需要替换的某个节点);1.2 节点名.属性名 (推荐使用)
2、属性赋值:
2.2 节点名.属性名=属性值
3.1 节点名.className 查看某个节点的属性
3.2 节点名.classList.add 向某个节点中添加属性
3.3 节点名.classList.remove 向某个节点中删除属性
ele_select.options.length=0 清空option操作
ele_select.selectedIndex 选中option的索引值
5、关于style属性:
标签名.style.样式属性="值"
1.9 onload 一张页面或一幅图像完成加载。
1.10 onmousedown 鼠标按钮被按下。


四、js的作用域
1、什么是作用域?
作用域就是变量与函数的可访问范围,即作用域控制着变量与函数的可见性和生命周期。在JavaScript中,变量的作用域有全局作用域和局部作用域两种。
2、js中的全局作用域:(在代码中任何地方都能访问到)
2.1最外层函数和在最外层函数外面定义或者声明的变量拥有全局作用域
2.2所有直接赋值没有var声明的变量是全局作用域
2.3所有window对象的属性拥有全局作用域
eg:一般情况下,window对象的内置属性都都拥有全局作用域,例如window.alert()、window.location、window.top等等。
3、js中的局部作用域:(只能在代码的某个局部地区能访问的到)
4、js中的作用域链
在js中一切皆对象,js代码的执行分为两个阶段,一个是代码的检测阶段,一个是代码的执行阶段。其中检测阶段主要是检测代码的合法性和在内存中开辟相应的内存空间给代码,执行阶段就是给相应的内存空间中的代码赋值,然后执行代码。
javascript高级语法二的更多相关文章
- JavaScript高级程序设计(二):在HTML中使用JavaScript
一.使用<script>元素 1.<script>元素定义了6个属性: async:可选.表示应该立即下载脚本,但不应该妨碍页面中的其他操作,比如下载其他资源或等待加载其他脚本 ...
- JavaScript高级用法二之内置对象
综述 本篇的主要内容来自慕课网,内置对象,主要内容如下 1 什么是对象 2 Date 日期对象 3 返回/设置年份方法 4 返回星期方法 5 返回/设置时间方法 6 String 字符串对象 7 返回 ...
- javascript高级语法学习
可维护的代码意味着: 可读的 一致的 可预测的 看上去就像是同一个人写的 已记录 命名函数表达式 (function fn(){}) 他是表达式的原因是因为括号 ()是一个分组操作符,它的内部只能包含 ...
- javascript高级语法
一.JavaScript对象 1.js对象简介 1.1 在JavaScript中除了null和undefined以外其他的数据类型都被定义成了对象,也可以用创建对象的方法定义变量,在JavaScrip ...
- JavaScript高级应用(二)(转)
1.组件是否安装 //组件是否安装 isComponentInstalled("{6B053A4B-A7EC-4D3D-4567-B8FF8A1A5739}", "com ...
- javascript 高级程序设计 二
这里我们直接进入主题: 在JS刚刚开始的时候,必须面临一个问题,那就是如何使的JS的加载和执行不会影响web核心语言HTML的展示效果,和HTML和谐共存. 在这个背景下<script>标 ...
- javaScript高级教程(二)Scope Chain & Closure Example
<!DOCTYPE html> <html> <head> <meta charset=gb2312 /> <title>js</ti ...
- javascript高级语法三
一.js的正则表达式 1.什么是正则表达式 正则表达式(regular expression)是一个描述字符模式的对象,ECMAScript的RegExp类表示正则表达式,而String和RegExp ...
- iOS开发——语法篇OC篇&高级语法精讲二
Objective高级语法精讲二 Objective-C是基于C语言加入了面向对象特性和消息转发机制的动态语言,这意味着它不仅需要一个编译器,还需要Runtime系统来动态创建类和对象,进行消息发送和 ...
随机推荐
- Atitit.json类库的设计与实现 ati json lib
Atitit.json类库的设计与实现 ati json lib 1. 目前jsonlib库可能有问题,可能版本冲突,抛出ex1 2. 解决之道:1 2.1. 自定义json解析库,使用多个复合的js ...
- 过滤NSString中的Emoji
有时候由于项目需求.要过滤NSString中的emoji. 比方下面情况: 要跟android互通,android假设还没做这方面的支持. 内容做为手机短信发出去. 思路例如以下,遍历NSString ...
- EFM8单片机与I2C外设通信
近期帮同学做一个项目,开发板是EFM8单片机,支持SPI和I2C协议(SMBus).非常久没搞过单片机了,并且条件限制,为了使单片机和外设成功通信.花了一个星期时间.刚開始使用SPI.发现代码逻辑都没 ...
- C语言基础(21)-C语言编译过程及GCC参数简介
任何C语言的编译过程可分为以下三部分: 一.预编译 在C语言中,以#开头的语句又叫预编译指令.预编译主要做以下两件事情: 1.将#include包含的头文件做简单的文本替换: 2.将代码中的注释删除. ...
- 手动grub引导redhat
grub是redhat默认的引导程序,在安装redhat时会提示是否安装bootloader,但自己手贱选择不安装,待系统重启时就是grub命令行界面,不能直接进系统.瞬时感觉麻烦大了,只能手动输入咯 ...
- 微信小程序新建项目完整流程
最近刚好也在做新的小程序项目,所以有机会给大家整理一个完整的开发流程! 上一篇介绍是如何获得appid,那么接下来就是怎么新建一个全新的小程序项目了 首先:下载最新版的微信开发者工具,支持网页版微信开 ...
- cef
http://blog.csdn.net/hats8888/article/details/53886591 http://blog.csdn.net/gong_hui2000/article/det ...
- hdu5795 A Simple Nim 求nim求法,打表找sg值规律 给定n堆石子,每堆有若干石子,两个人轮流操作,每次操作可以选择任意一堆取走任意个石子(不可以为空) 或者选择一堆,把它分成三堆,每堆不为空。求先手必胜,还是后手必胜。
/** 题目:A Simple Nim 链接:http://acm.hdu.edu.cn/showproblem.php?pid=5795 题意:给定n堆石子,每堆有若干石子,两个人轮流操作,每次操作 ...
- PHP 几种 序列化/反序列化的方法
序列化是将变量转换为可保存或传输的字符串的过程:反序列化就是在适当的时候把这个字符串再转化成原来的变量使用.这两个过程结合起来,可以轻松地存储和传输数据,使程序更具维护性. 1. serialize和 ...
- liunx系统安装composer与配置
1.下载composer curl -sS https://getcomposer.org/installer | php 2.我把它放在系统的PATH目录中,这样就能在全局访问它. mv compo ...