什么是js(了解)
javascript简称js,是目前web开发中不可缺少的脚本语言,js不需要编译即可运行,“寄生”在html体内随网络传输到客户端的浏览器的内存中解析。
脚本语言
脚本:电影或电视剧的拍摄时候的剧本底稿。/计算机中的脚本,给计算机看。脚本中包含一些给计算机的指令。
Java和C语言,都需要编译成二进制的可执行文件。脚本文件是不需要编译,直接可以使用解释器进行解释执行!
js是基于对象和事件驱动的脚本语言。
在Java中int i = 5;boolean res = true;
基于对象:不支持继承!
事件驱动:点击事件,前进后退、滑动、提交等等事件。
js的作用(了解)
js的作用很多,在目前学习阶段,只需要记住如下两个最最最常用的就可以了:
1.js可以动态的修改html及css的代码(修改的是浏览器内存中的那一份代码)
2.js可以对表单进行校验
js的组成部分(理解)
1.ECMAScript:这一部分主要是js的基本语法
2.BOM:Browser Object Model 浏览器对象模型,主要是获取浏览器信息或操作,例如:浏览器的前进与后退、浏览器弹出提示框、浏览器地址栏输入网址跳转等操作等(window)
3.DOM:Document Object Model 文档对象模型,此处的文档暂且理解为html,html加载到浏览器的内存中,可以使用js的DOM技术对内存中的html节点进行修改,用户从浏览器看到的是js动态修改后页面
js的引入方式(重点)
行内脚本
在标签上添加属性,绑定事件
内部脚本
创建一个script标签,在script标签中写js代码
外部脚本
在js文件夹中创建一个".js"结尾的文件,在改文件中写代码,什么地方需要使用到该文件中的代码就使用script标签的src属性将改文件引入
三种引入方式的优缺点介绍
优点
行内脚本
直观
内部脚本
复用性较强
外部样式
复用性特别强
缺点
行内样式
毫无复用性
只能写简单的js代码
内部样式
不太直观
外部样式
可读性差
用户加载这个html文件的时候还要加载js文件,流量消耗较大
js的变量
Java的变量:
变量类型 变量名 = 变量值
js的变量:
var 变量名 = 变量值
js的数据类型
基本数据类型
数字类型:number
布尔类型:boolean
字符串类型:string
未定义:undefined
空类型:null (object)
类型之间的转换
number和boolean转换成string。
toString()
string转number(重要)
parseInt()
parseFloat()
number、string转boolean。(重要)
new Boolean()
引用数据类型
跟Java中一样,js中的对象类型都是引用数据类型
var obj = new Object();
var str = new String();
var date = new Date();
引用数据类型全为object类型
js中的运算符
赋值运算符 var num = 5;
比较运算符
“>”
<
== 比较数据大小
!=
=== 比较数据大小和内容
逻辑运算符,在js中没有单与和单或
&&
||
!
算数运算符
+
-
*
/
%
三元运算符
条件?a:b
js中的逻辑语句
跟Java不同的 for(index in 数组名) ,index表示数组中的数据的下标
js中的函数(重点)
作用:封装一些功能实现
js中定义函数的三种方式(前两种是重点)
一般方式
function 函数名(){}
匿名函数
function(){}
对象方式(以后用不到)
js中的常用事件(重点)
事件概述
js的事件是js不可或缺的组成部分,要学习js的事件,必须要理解如下几个概念:
1)事件源:被监听的html元素(这个事件发生在谁身上,谁就是事件源)
2)事件:某类动作,例如点击事件,移入移除事件,敲击键盘事件等
3)事件与事件源的绑定:在事件源上注册上某事件,通过类似onclick等属性进行绑定
4)事件触发后的响应行为:事件触发后需要执行的代码,一般使用函数进行封装
常用事件
onload 当页面加载完成时触发
onsubmit 当表单提交的时候触发
onclick 当鼠标点击某个对象的时候触发
ondblclick 当鼠标双击某个对象的时候触发
onfocus 当获取焦点的时候触发
onblur 当失去焦点的时候触发
onchange 当用户改变域的内容时触发
onkeydown 当键盘按键被按下时触发
onkeypress 当键盘按键被按住时触发
onkeyup 键盘按键松开时触发
onmousedown 当鼠标左键按下时触发
onmouseup 当鼠标左键松开时触发
onmouseover 当鼠标移到某个元素之上时触发
onmouseout 当鼠标移开某个元素时触发
onmousemove 当鼠标移动时触发
BOM(对象集合)
BOM的概述(了解)
BOM(Browser Object Mode),浏览器对象模型,是将我们使用的浏览器抽象成对象模型,例如我们打开一个浏览器,会呈现出以下页面,通过js提供浏览器对象模型对象我们可以模拟浏览器功能。
BOM的对象
1.Screen对象,Screen 对象中存放着有关显示浏览器屏幕的信息。(了解)
2.Window对象(BOM里面最顶级的对象),Window 对象表示一个浏览器窗口或一个框架。(重点)
3.Navigator对象,包含的属性描述了正在使用的浏览器(了解)
4.History对象,其实就是来保存浏览器历史记录信息。(了解)
5.Location对象,location对象的href属性可以用于跳转页面。(重点)
Window对象
一、弹框(重点)
提示框 alert(提示信息)
确认框 confirm(提示信息)
输入框 prompt(提示信息)
二、定时器(重点)
执行一次的定时器:setTimeout
第一个参数:函数对象
第二个参数:毫秒值
执行多次的定时器:setInterval
清除定时器clearInterval(定时器对象)
三、全局方法(了解)
parseInt()和parseFloat()函数
Location对象
href,可以在js中对url进行访问。
应用:定时弹出广告页面。
定时跳转到广告网页
1.当页面加载成功之后开启一个定时器(只执行,一次的定时器)
2.给定时器设置时间为5秒之后执行,定时器中执行的函数为
x window.onload = function(){ setTimeout(function(){ location.href = "http://www.baidu.com" },5000) }
定时弹广告的案例
1.给首页添加一个div,在div中放置一张广告图片,并设置该div的默认display属性为none(表示隐藏)
2.当页面加载完毕的时候开启一个定时器(只执行一次的定时器),5秒后执行。执行的任务是设置div的display属性为block
window.onload = function(){ var ad = document.getElementByid("add") setTimeout(function(){ ad.style.display = "block" //并且当广告图片显示4秒钟之后要隐藏广告 setTimeout(function(){ ad.style.display = "none" },4000) },5000) }
轮播图的案例
1.当页面加载完毕的时候开启一个周期性执行的定时器,每隔三秒执行一次
2.获取轮播图对应的src标签,并在定时器每次执行的时候重新设置图片的src属性
window.onload = function(){ //获取图片标签 var im = document.getElementByid("img1") //将轮播图的图片放到数组中 var imgs = ["images/1.jpg","images/2.jpg","images/3.jpg"] //开启一个定期执行的定时器 var i = 0; setInterval(function(){ //这里就做更改img的src属性的操作 i ++; if(i == 3){ i=0; } img.src = imgs[i]; },3000) }
表单校验的案例
1.给submit按钮绑定点击事件
2.当点击submit按钮的时候,判断用户名和密码输入框的value是否为空,如果为空则弹框提示
最低要求:
1.掌握js的变量声明以及运算符、逻辑语句
2.掌握js的两种函数声明方式
3.掌握常见的事件,以及两种事件的绑定方式
4.掌握window对象的三种弹框和两种定时器的使用
5.掌握location对象的href属性的使用