javascript是一种嵌入在网页里的程序段,是一种解释性语言,只能被浏览器解释执行。出于安全性的考虑,增加了javascript的限制,增强了客户端交互功能。
JavaScript的作用:
1.增,删,改网页上所有元素及属性;
2.在HTML网页中动态写入文本;
3.响应网页中事件,做出相应处理;
4.校验客户端提交的数据;
5.检测浏览器版本和类型。
JavaScript代码嵌入的嵌入:
1.嵌入script标签<script>......</script>
2.嵌入a标签<a href="javascript:alert('win')";></a>
3.引用外部文件,创建一个JavaScript文件在title下引入:<script src="javascript文件路径",type=“text/javascript”></script>
javascript的数据类型
1.基本数据类型:undefined,null,boolean,number,string
2.引用数据了类型:
(1)原生对象:object,Array,String,Boolean,Number,Date,RegExp
(2)内置对象:Globe,Math
(3)宿主对象:BOM,DOM(依赖浏览器)
(4)自定义对象
数据类型的转换:
(1)自动转换:任何数据和字符串相加都是字符串,遇到减号将字符串转为整数,如果无法转为整数,得到非字符NaN;
(2)强制转换:
parseInt:找数字,如果是数字直接返回,遇到非数字截止
如果首位是非数字,返回NaN
parseFloat:截止到第一个小数点为止
Number:只能转换数字,里面如果包含字符则无法转换,返回NaN
Boolean:0表示false,非0表示true
产生对象的方法:
1.工厂模式:负责产生对象,外部调用不会管内部实现方式
在函数中先要创建一个对象,结束时,要将对象返回出去
2.构造函数:去掉工厂模式的两个步骤,因为浏览器会默认产生一个Object对象和返回一个对象
3.原型:对象.Prototype.方法
4.构造+原型:在构造的基础上判断对象是否有原型的某个函数
5.Json:(1)用于储存和传输数据的一种格式。(2)经常用于服务器和客户端传输数据(3)是一种轻量化的数据交换格式(4)用大括号保存数据(5)每个数据之间,用,隔开
继承:
1.对象的冒充:同时冒充多个父类时,有相同属性或方法时,后面会覆盖前面的
(1)子类中:this.inherit=父类函数名 this.inherit(name)(属性名)
(2)子类中:父类名.call(this,name);
(3)子类中:父类名.apply(this,[name等])
2.原型链(类与类之间的单继承)
子类之外:子类名.Prototype=new 父类名()
BOM
页面上所有的变量都是window的属性
BOM主要功能:
1.弹出浏览器窗口能力
2.移动,关闭,更改浏览器大小的能力
3.提供浏览器信息导航对象
4.提供浏览器载入页面详细的本地对象
5.提供分辨率
定时器:setTimeOut(1,2)(第一参为要执行代码,二参为控制时间:毫秒)
clearTimeOut(test):清除定时器对象
间隔执行程序:setInterval(1,2)(第一参为执行程序,二参为间隔时间:毫秒)
clearInterval(test):清除时间间隔对象
alert:向用户弹出对话框,并等待用户关闭
confirm:弹出选择对话框,并返回用户操作的布尔值,会产生阻塞,用户操作后才返回
prompt:弹出输入框(输入内容为string类型)
open:打开一个窗口
close:关闭窗口
DOM
获取节点
创建节点
替换节点
克隆节点
事件
事件冒泡:当使用时,子元素先触发,父元素也跟着触发
事件捕获:父类先触发,子类再触发
鼠标事件:onmouse移出,onmouseover移入,onclick点击,onmousemove移动,onmousedown按下,onmouseup松开
键盘事件:onkeydown按下任意键,onkeyup松开键,onkeypress按下除shift和Alt以外的键
HTML事件:onload加载,onchange改变文本触发,onfocus获取到光标...
javascrip控制css
(一)控制内联
获取属性
1.通过.style获取元素css属性,可以动态改变css属性
2. .style.getPropertyValue("属性名")
3..style.item(下标)获得当前返回的第几个属性
删除属性:
.style.removeproperty("属性名")
增加属性:
.style.setProperty("","","")动态增加属性,一参为属性名,二参为值,三参为优先级,可以为空
获得对象所有属性:
.style.cssText=""将之前所有的属性覆盖为当前设置的属性
(二)内部样式,外部样式(火狐,IE会将.cssRules改为.Rules)
.styleSheets:得到内部和外部样式的个数数组
.cssRules:得到第几个CSS样式
(三)最终样式(火狐,IE:.currentStyle)
.defaultView.getComputedStyle(1,2)(一参为对象,二参为伪类,一般为“”)是只读的,不能改变内容