day1 HTML
案例1-网站信息展示
需求:
在页面展示一些文字信息,需要排版
技术分析:
html:超文本标签语言
html:
作用:展示
超文本:超越了一般文本,描述文本的字体 颜色 图片
标签:标记
html书写规则:
文件的后缀名 .html(建议) 或者 .htm
标签必须用 <> 引起来 已经定义好的标签
属性
格式: key="value"
建议属性的值用引号引起来.
不区分大小写
注意:
最好将所有的内容放在一个标签中 <html></html>
有开始标签和结束标签的标签称之为围堵标签
没有结束的标签的称之为空标签 <br/>
开始标签和结束标签之间的内容称之为标签体.
<!--注释内容--> html页面中的注释
标签必须正常嵌套,
标签最好关闭
文件标签:
html标签:
声明当前网页为html页面
子标签:
<head></head>
<body></body>
head:用来存放当前页面的重要信息,一般不展示在html页面上
常见的子标签:
<title></title> 网页的标题
body:
要展示的数据放在body中
标题标签:
<hn></hn>
n取值 :1~6
h1最大 h6最小
自动换行 且留白 默认加粗
常用属性:
align:对齐方式
left:左 right:右 center:居中
格式:
<h2 align="center"></h2> 属性都写在第一个<>里
//
字体标签:(了解)规定文本的字体、字体尺寸、字体颜色。
<font></font>
常用属性:
face:字体
size:尺寸
color:颜色
颜色的取值:(RGB)
方式1: #xxxxxx x为16进制
方式2: 英文单词
段落标签:
<p></p>
其他标签:
<b></b> <strong></strong>加粗
<i></i> 斜体
水平线
<hr/>
换行
<br/>
//
案例1-步骤分析:
1.新建一个html页面
2.标题标签
3.添加一个水平线
4.4个段落
5.添加字体颜色 加粗 斜体
/
案例2-图片网页展示
需求:
在一个页面中展示多张图片
技术分析:
<img/>
图片标签:★
<img/>
常用属性:
★src:图片的路径
alt:替代文字
title:移上去显示的文字
width:宽
height:高
大小的写法:
像素:123px
百分比:20%
路径的写法:
相对路径:
./ 或者 什么都不写 当前目录
../ 上一级目录
绝对路径:
带协议的绝对路径:
http://www.itheima.com
实现:
案例3-列表页面展示
需求:
将友情连接的页面通过列表展示出来
技术分析:
列表标签
列表标签:
<ol></ol> 有序
<ul></ul> 无序
常用的标签
<li></li> 列表项
超链接标记
<a></a>
常用属性:
href:跳转路径
target:在那里打开
默认值:_self _blank(在空白页面打开)
案例4-首页信息的展示
需求:
通过表格布局将首页信息展示
技术分析:
表格表格
表格标签★
<table></table>
常用的子标签
<tr>:行
<tr></tr>
常用子标签:
<td>:列
<th>:表头单元格 默认居中加粗
注意:
一行必须只有有一个单元格或者一列
//
table 的常用属性:
border:边框 像素值
width:
align:表格对齐方式
tr 的常用属性:
align:内容对齐
td 的常用属性:
align:内容对齐
colspan:跨列合并 值:合并的列数
rowspan:跨行合并
步骤分析:
1.常见一个8行1列的表格
2.在第一行 放logo
嵌套一个1行3列的表格
3.第2行 放菜单
4.第3行 放图片
5.第4行 热门商品
嵌套一个2行7列的表格
6.第5行 放广告图片
7.第6行 最新商品
嵌套一个2行7列的表格
8.第7行 放一个图片
9.第8行
两个段落
///
案例5-表单页面
需求:
设计一个表单页面,用来收集用户的数据
技术分析:
表单标签
表单标签★★★
<form></form>
作用:
用来从浏览器端收集用户的信息.
步骤分析:
1.在页面中间添加一个表格
2.10行3列表格
3.在表格中添加表单表单子标签
/
案例6-后台管理页面(了解)
需求:
开发一个后台管理页面,通过frameset实现
技术分析:
frameset:框架集
frame:具体实现
frameset:框架集(了解)
常用属性:
cols:垂直切割
例如: cols="40%,60%"
例如: cols="40%,*,10%"
rows:水平切割
常见的子标签:
frame
注意:
最好和body不要共存
frame:具体实现
常用属性:
src:展示的页面的url
//
补充:
转义字符:
三部分构成 &实体;
掌握的转义字符:
> > //great then
< <
& &
空格
//
meta
元信息
<meta charset="UTF-8">指定浏览器用什么编码打开此页面
day2 CSS&JS
回顾:
html:
作用:展示
文件标签:
<html>
<head>
<title></title>
</head>
<body></body>
</html>
排版标签:
p 段落
hr 水平线
br 换行
字体
h1~h6 标题
font 字体 大小 颜色
b strong 加粗
i 斜体
图片★
<img src="图片的路径" alt="替代文字" width="" height=""/>
路径的写法:
相对路径:
./ 或者 什么都不写 当前目录
../ 上一级目录
绝对路径:常用
http://www.itheima.com/xx
超链接★
<a href="跳转的路径" target="在什么地方打开"></a>
表格标签 ★★
<table border="" width="" height="" bgcolor="" align="表格对齐方式">
<tr align="内容对齐方式">
<th></th> <!--表头单元格-->
<td></td> <!--普通单元格-->
</tr>
</table>
td重要的属性:
colspan:列合并
rowspan:行合并
列表:
<ol></ol>
<ul></ul>
子标签:列表项
<li></li>
form 表单标签:
常用属性
action:提交的路径
method:提交的方式(get和post)
常用子标签
input
select
textarea
input标签
常用属性:
type:
text
password
radio
checkbox
file
submit
reset
button
hidden
image
name:
要想将信息提交到服务器必须提供name属性
将单选框和复选框设置成一组
value:
text password 设置默认值
radio checkbox 设置选中后提交的值
submit reset button 给按钮起个显示的名字
select:下拉选
<select name="">
<option value="">显示的名字</option>
</select>
textarea:文本域
<textarea cols="" rows="" name="">默认值</textarea>
给单选框多选框设置默认值
设置属性 checked="checked"
给下拉选设置默认值
设置属性 selected="selected"
提交的路径(get)
http://ssdfsdfsfd?key=vaule&key=value
例如:
http://localhost/day/login.jsp?username=tom&password=123
框架(了解)
frameset:规定框架结构 框架集
常用属性:
rows:水平qiege
cols:垂直切割
常用子标签
frame:具体实现
例如:水平切割3份
<frameset rows="15%,*,10%">
<frame>
<frame>
<frame>
</frameset>
frame:
常用的属性:
src:具体展示那个网页
name:给当前的frame起个名称 方便超链接使用
案例1-用div+css重新布局首页
技术分析:
div
css
/
div:
块标签
<div></div>
span:行内的块标签
<span><span>
css:渲染
层叠样式表
作用:
渲染页面
提高工作效率
格式:
选择器{属性:值;属性1:值1;}
后缀名:
.css 独立的css(样式)文件
和html元素的整合★
方式1:内联样式表 通过标签的style属性设置样式
方式2:内部样式表 在当前页面中使用的样式
通过head标签的style子标签导入
例如:
<style>
#divId2{
background-color: #0f0;
}
</style>
方式3:外部样式表 有独立的css文件
通过head标签的link子标签导入
例如:
<link rel="stylesheet" href="css/1.css" type="text/css"/>
选择器:★
id选择器
要求:
html元素必须有id属性且有值 <xxx id="id1"></xxx>
css中通过"#"引入,后面加上id的值 #id1{...}
class选择器
要求:
html元素必须有class属性且有值 <xxx class="cls1"/>
css中通过"."引入,后面加上class的值 .cls1{...}
元素选择器
直接用元素(标签)名
即可 xxx{...}
派生的选择器
属性选择器★
要求:
html元素必须有一个属性不论属性是什么且有值 <xxx nihao="wohenhao"/>
css中通过下面的方式使用
元素名[属性="属性值"]{....}
例如:
xxx[nihao="wohenhao"]{....}
后代选择器
选择器 后代选择器{...} 在满足第一个选择器的条件下找后代的选择器,给满足条件的元素添加样式
了解的选择器
锚伪类选择器
a:link {color: #FF0000} /* 未访问的链接 */
a:visited {color: #00FF00} /* 已访问的链接 */
a:hover {color: #FF00FF} /* 鼠标移动到链接上 */
a:active {color: #0000FF} /* 选定的链接 */
选择器使用小结:
id选择器:一个元素(标签)
class选择器:一类元素
元素选择器:一种元素
属性选择器:元素选择器的特殊用法
使用的时候注意:(了解)
若多个样式作用于一个元素的时候
不同的样式,会叠加
相同的样式,最近原则
若多个选择器作用于一个元素的时候
越特殊优先级越高 id优先级最高
//
属性(了解)
字体
font-family:设置字体(隶书) 设置字体家族
font-size:设置字体大小
font-style:设置字体风格
文本:改变文本的颜色、字符间距,对齐文本,装饰文本,对文本进行缩进
color:文本颜色
line-height:设置行高
text-decoration: 向文本添加修饰。 none underline
text-align:对齐文本
列表:
list-style-type:设置列表项的类型 例如:a 1 实心圆
list-style-image:设置图片最为列表项类型 使用的时候使用 url函数 url("/i/arrow.gif");
背景:
background-color:设置背景颜色
background-image:设置图片作为背景 url
尺寸:
width:
height:
浮动:
float: 可选值 left right
分类:
clear:设置元素的两边是否有其他的浮动元素
值为:both 两边都不允许有浮动元素
display:设置是否及如何显示元素。
none 此元素不会被显示。
block 此元素将显示为块级元素,此元素前后会带有换行符。
inline 默认。此元素会被显示为内联元素,元素前后没有换行符。
框模型:(理解)
一个元素外面有padding(内边距) border(边框) margin(外边距)
padding:元素和边框的距离
margin:元素最外层的空白
上面这三个属性都有简写的属性
若设置大小的时候 四个值:顺序 上右下左
padding:10px 10px 10px 10px
若只写一个的话 代表四个边使用同一个值 padding:10px
若只写两个个的话 代表四个边使用同一个值 padding:10px 20px
若只写三个个的话 代表四个边
边使用同一个值 padding:10px 20px 30px
border(边框)
还可以设置颜色 风格
简写属性:
border:宽度 风格 颜色;
border:5px solid red;
solid:实线
dashed:虚线
double:双实线
步骤分析:
1.创建一个div
2.在这个div中创建8个div
3.第1个div logo
嵌套三个div
4.第2个div 菜单
嵌套一个列表 display:inline
5.第3个div 轮播图
6.第4个div 热门商品
标题标签 图片display:inline
a:两个div
左边的div 展示一张图片
右边的div 展示所有商品
b.右边的div中嵌套10个div
3.第5个div 广告
3.第6个div 最新商品
3.第7个div 广告
3.第8个div foot 版权
两个p标签
javascript 俗称 js
案例1-校验表单
需求:
表单提交的时候需要校验数据是否完整,若不满足条件,则使用弹出框提示.
技术分析:
js
//
JavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,
内置支持类型。它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言
组成部分:
ECMAScript:js基础语法(规定 关键字 运算符 语句 函数等等...)
BOM:浏览器对象模型
DOM:文档对象模型
作用:
修改html页面的内容
修改html的样式
完成表单的验证
注意:
js可以在页面上直接写,也可以单独出去
js的文件的后缀名 .js
js和html整合
方式1:在页面上直接写
将js代码放在 <script></script>标签中,一般放在head标签中
方式2:独立的js文件
通过script标签的src属性导入
js中变量声明:
var 变量名=初始化值;
var 变量名;
变量名=初始化值;
注意:
var可以省略 建议不要省略
一行要以分号结尾,最后一个分号可
以省略,建议不要省略
js的数据类型:
原始类型:(5种)
Null
String
Number
Boolean
Undefined
通过 typeof运算符可以判断一个值或者变量是否属于原始类型,若属于原始类型,他还可以判断出属于那种原始类型
typeof 变量|值;
若变量为null,使用typeof弹出的值 object
使用typeof的返回值
undefined - 如果变量是 Undefined 类型的
boolean - 如果变量是 Boolean 类型的
number - 如果变量是 Number 类型的
string - 如果变量是 String 类型的
object - 如果变量是一种引用类型或 Null 类型的
引用类型:
//
js:事件驱动函数
函数定义格式:
方式1:
function 函数名(参数){
函数体;
}
注意:函数不用声明返回值类型
参数不需要加类型
函数调用的时候
函数名(参数)
js中的事件:
常见的事件:
单击: onclick
表单提交: onsubmit 加在form表单上的 οnsubmit="return 函数名()" 注意函数返回值为boolean类型
页面加载: onload
js事件和函数的绑定:
方式1:
通过标签的事件属性 <xxx οnclick="函数名(参数)"></xxx>
js获取元素:
方式1:
var obj=documnet.getElementById("id值");
获取元素的value值
obj.value;
获取元素的标签体中的内容
obj.innerHTML;
案例2-步骤分析:
1.先有一个表单
2.在form上添加一个事件 οnsubmit="return checkForm()"
3.编写checkForm这个方法
4.获取每个表单子标签的内容
5.判断是否满足要求,
若满足,不用管他
若不满足,表单不能提交,返回false,且提示信息.
///
函数的定义:
方式1:
function 函数名(参数){
函数体;
}
方式2:
var 函数名=function(参数){
函数体;
}
js事件和函数的绑定:
方式1:
通过标签的事件属性 <xxx οnclick="函数名(参数)"></xxx>
方式2:
给元素派发事件
document.getElementById("id值").οnclick=function(参数){....}
document.getElementById("id值").οnclick=函数名
注意:
内存中应该存在该元素才可以派发事件
a.将方式2的js代码放在html页面的最下面
b.在页面加载成功之后在运行方式2的js代码 onload事件.
案例3-轮播图片
需求:
每隔3秒图片更新一下
技术分析:
bom中window对象的定时器方法
定时器:
var id=setInterVal(code,毫秒数):每隔指定的毫秒数执行一次函数 周期
var id=setTimeout(code,毫秒数):延迟指定的毫秒数之后 只执行一次函数
清除定时器:
clearInterval(id);
claerTimeout(id);
String对象
原始类型的String是一个为对象可以直接调用String类对象的方法
substring(0,endIndex);//输出两下标之间的值 substring(s,e)输出下标s到下标e-1
步骤分析:
1.在首页上面绑定一个onload事件
2.事件绑定的函数中编写一个定时器
3.定时器每隔3秒更换图片
imgObj.src="";
///
补充:
运算符:
比较运算符: > >= < <=
若两边都是数字 和java一样
若一般为数字,另一边为字符串形式的数字,将字符串形式的数字转换成数字在进行比较 3>"2"
若一般为数字,另一边为字符串,返回一个false 3>"hello"
两边都是字符串的时候,比较ascii
等性运算符 == ===
== :只判断值是否相同
===:不仅判断是否相同,还要判断类型是否相同
语句:
if语句 和java一样
for while 语句和java一样
switch 和java一样(区别,switch 后面跟字符串. 还可以跟变量)
/
总结:掌握
1.css和html整合
方式3种
2.css中选择器:
id class 元素
属性 后代
3.js
js和html整合
方式两种
4.变量定义
5.函数定义
2中格式
6.事件
onclick onload onsubmit
7.事件和函数的绑定
2中方式
8.定时器 2种
9.for while if
day3 js
回顾:
css:
层叠样式表
作用:
渲染页面
提供工作效率,将html和样式分离
和html的整合
方式1:内联样式表
通过标签的style属性 <xxx style="..."/>
方式2:内部样式表
通过head的子标签Style子标签
<style type="text/css">
选择器{
属性:值;
属性1:值1;
}
</style>
方式3:外部样式表
有一个独立css文件.后缀名:.css
在html中通过link标签导入
选择器:
id选择器
html元素有id属性且有值 <xx id="d1">
css中通过 # 导入 #d1{...}
类选择器
html元素有class属性且有值 <xx class="c1">
css中通过 . 导入 .c1{...}
元素选择器
css中通过标签名即可 xx{...}
属性选择器
html元素有一个属性且有值 <xx att="val1">
css中通过元素名[属性="值"]使用 xx[att="val1"]{...}
后代选择器
选择器 后代选择器
锚伪类(了解)
//
字体 文本 背景 列表 分类(clear display:none block inline)
框模型:
一个元素外边有内边距 边框 外边距
顺序:上右下左
//
js
javascript 脚本语言 解释性 基于对象 事件驱动函数
js的组成:
ECMAScript(语法)
BOM(浏览器对象模型)
DOM(文档对象模型)
html和js的整合
方式1:内部编写js
<script type="text/javascript">js代码</script>
方式2:
外部有一个独立的js文件 后缀名:.js
在html中通过script的src属性导入
<script src="js的路径"></script>
注意:
一旦使用了src属性,那么script标签体中的js代码将不再执行了.
变量:
var 变量名=初始化值;
数据类型:
原始类型(5种)
Undefined
Null
String 用引号引起来的内容
Number
Boolean
通过typeof可以判断一个值或者变量是否是原始类型,若是原始类型,还可以判断属于那种.
typeof 变量|值
引用类型
运算符:
关系运算符:
两边值都是字符串,比较ascii码
两边都是数字,和java一样
一边是数字,一遍是字符串形式的数字, 可以比较
一边是数字,一遍是普通字符串 可以比较 值永远是false
等性运算符
"66"==66 true
"666"===666 false
js的语句
if while for 和java一样
//
获取元素:
var obj=document.getElementById("id值");
获取元素的value属性
var val=document.getElementById("id值").value;
设置元素的value属性
document.getElementById("id值").value="sdfsdf";
获取元素的标签体
var ht=document.getElementById("id值").innerHTML;
设置元素的标签体
document.getElementById("id值").innerHTML="ssss";
定义函数:
方式1:function 函数名(参数列表){函数体}
方式2:
var 函数名=function(参数列表){函数体}
注意:
函数声明的时候不用声明返回值类型
参数列表上不要写参数类型
通过return结束方法和将值返回
事件:
onclick 单击
onsubmit 表单提交
onload 页面加载成功或者元素加载成功
事件和函数绑定
方式1:通过元素的事件属性
<xxx onxxx="函数名(参数列表)">
方式2:派发事件
document.getElementById("id值").onxxx=function(){...};
document.getElementById("id值").onxxx=函数名;
/
案例1-定时弹出广告
需求:
打开页面后4秒,展示广告,2秒之后,该广告隐藏.再停2秒,继续展示.
技术分析:
定时器
定时器(BOM-window对象)
setInterval(code,毫秒数):周期执行
setTimeout(code,毫秒数):延迟多长事件后 只执行一次.
清除定时器
clearInterval(id):
clearTimeout(id):
步骤分析:
1.确定事件
2.编写函数
a.获取元素
b.操作元素
1.html页面,先把广告隐藏
2.页面加载成功事件 onload
3.编写函数
定时器:
操作元素:
document.getElementById("")
操作css属性(用style对象)
document.getElementById("id").style.属性="值"
属性:就是css中属性
注:css属性有"-" 例如:backgroud-color
若有"-" 只需要将"-"删除,后面第一个字母变大写即可
注意:
只要是window对象的属性和方法,可以把window省略
window.onload 等价于 onload
window.setInterval() 等价于 setInterval()
bom(浏览器对象模型)总结
所有的浏览器都有5个对象
window:窗口
location:定位信息 (地址栏)
history:历史
window对象详解:
如果文档包含框架(frame 或 iframe 标签),浏览器会为 HTML 文档创建一个 window 对象,
并为每个框架创建一个额外的 window 对象。
常用的属性:
通过window可以获取其他的四个对象
window.location 等价域 location
window.history 等价于 history
...
常用的方法
消息框
alert("...."):警告框
confirm("你确定要删除吗?"):确定框 返回值:boolean
prompt("请输入您的姓名"):输入框 返回值:你输入的内容
定时器
设置定时器
setInterval(code,毫秒数):周期执行
setTimeout(code,毫秒数):延迟多长事件后 只执行一次.
例如:
setInterval(showAd,4000);
serInterval("showAd()",4000);
清除定时器
clearInte
rval(id):
clearTimeout(id):
打开和关闭
open(url):打开
close():关闭
/
location:定位信息
常用属性:
href:获取或者设置当前页面的url(定位信息)
location.href; 获取url
location.href="...";设置url 相当于 a标签
//
history:历史
back();后退
forward():向前
★go(int)
go(-1) 相当于 back()
go(1) 相当于 forward()
//
案例2-表单校验plus
需求:
提示信息不用弹出框,将信息追加在文本框后面
技术分析:
确定事件 表单提交的时候 onsubmit
文本框失去焦点的时候 onblur
编写函数
获取元素
document.getElementById("id值");
操作元素(获取元素的值,操作标签体,操作标签value属性)
/
步骤分析:
1.表单
2.表单提交的时候 确定事件 onsubmit()
3.校验用户名和密码
4.获取用户名和密码的对象及值
5.判断内容,当为空的时候,获取响应的span元素
往span元素中显示错误信息
注意:
在方法中(function()) this指代的是当前的元素(当前dom对象)
例如:
<input type="text" name="username" id="username" οnblur="loseFocus(this.value)">
方法:
function loseFocus(obj){
alert(obj);
}
/
事件总结:
常见的事件:
焦点事件:★
onfocus
onblur
表单事件:★
onsubmit
onchange 改变
页面加载事件:★
onload
鼠标事件(掌握)
onclick
鼠标事件(了解)
ondblclick:双击
onmousedown:按下
onmouserup:弹起
onmousemove:移动
onmouserover:悬停
onmouserout:移出
键盘事件(理解)
onkeydown:按下
onkeyup:弹起
onkeypress:按住
绑定事件:
方式1:
元素的事件属性
方式2:
派发事件
///
了解
阻止默认事件的发生
阻止事件传播
/
案例3-隔行换色
需求:
一个表格,隔一行换一个色
技术分析:
事件:onload
获取元素:dom操作
///
获取元素:
document.getElementById("id"):通过id获取一个元素
document.getElementsByTagName("标签名"):通过标签名获取一种元素(多个)返回一个数组
Array:
常用属性:
length:数组的长度
步骤分析:
1.html表格一加载的时候 确定事件 onload
2.编写函数
a.获取元素(所有的tr元素)
b.操作(若当前行是偶数的话加一个样式,若是奇数的话,加另一个样式)
//页面加载成功
οnlοad=function(){
//1.获取所有的tr
var arr=document.getElementsByTagName("tr");
//alert(arr);
//alert(arr.length);
//2.判断奇偶数 添加不同的样式 遍历数组
for(var i=1;i<arr.length;i++){
if(i%2==0){
arr[i].style.backgroundColor="#FFFFCC";
}else{
arr[i].style.backgroundColor="#BCD68D";
}
}
}
//
案例4:全选或者全不选
步骤分析:
1.确定事件 最上面那个复选框的单击事件 onclick
2.编写函数:让所有的复选框和最上面的复选框状态保持一致
a.获取最上面这个复选框选中状态 通过checkbox的checked属性即可
b.获取其他的复选框,设置他们的checked属性即可
可以通过以下两种方案获取元素
document.getElementsByClassName():需要给下面所有的复选框添加class属性
document.getElementsByName():需要给下面所有的复选框添加name属性
//
dom(文档对象模型)
当浏览器接受到html代码的时候,浏览器会将所有的代码装载到内存中,形成一棵树(document树)
节点(Node)
文档节点 document
元素节点 element
属性节点 attribute
文本节点 text
获取节点:
通过document可以获取其他节点:
常用方法:
document.getElementById("id值"):获取一个特定的元素
document.getElementsByTagName("标签名"):通过标签名获取一种元素(多个)
document.getElementsByClassName("class属性的值"):通过class属性获取一类元素(多个)
document.getElementsByName("name属性的值"):通过name属性获取一类元素(多个)
设置获取获取节点的value属性
dom对象.value;获取
dom对象.value="";设置
设置或者获取节点的标签体
dom对象.innerHTML;获取
dom对象.innerHTML="";设置
获取或者设置style属性
dom对象.style.属性;获取
dom对象.style.属性="";设置
获取或者设置属性
dom对象.属性
/
对于htmldom的操作若在js或者htmldom 查找不到 去查找xml dom
关于文档的操作 在 xml dom 的document中
关于元素的操作 在 xml dom 的element中
appendChild(dom对象):在一个元素下添加孩子
//
案例5-左右选中.
需求:
技术分析:
1.确定事件,按钮的单击事件
2.编写函数:
点击移动单|多个的:
a.获取左边选中的选项 select对象.options--数组
遍历数组 判断是否选中 option对象.selected
b.将其追加到右边的下拉选中
rightSelect对象.appendChild(option);
点击移动所有的
a.获取左边的所有的选项
b.一个个的追加过去
///
案例6-省市联动
需求:
选中省的时候,动态的查询当前省下的所有市,然后展示在市的下拉选中
技术分析:
数组:
数组:
语法:
new Array();//长度为0
new Array(size);//指定长度的
new Array(e1,e2..);//指定元素
非官方
var arr4=["aa","bb"];
常用属性:
length
注意:
数组是可变的
数组可以存放任意值
常用方法:(了解)
存放值:对内容的操作
pop():弹 最后一个
push():插入 到最后
shift():删除第一个
unshift():插入到首位
打印数组:
join(分隔符):将数组里的元素按照指定的分隔符打印
拼接数组:
concat():连接两个或更多的数组,并返回结果。
对结构的操作:
sort();排序
reverse();反转
步骤分析:
1.省的下拉选 的选项中添加value属性 当成数组的索引
2.初始化市
3.选择省的时候,onchange事件
4.编写函数,
通过获取的索引获取对象的市的数组 this.value
遍历数组,将数组里面的每个值组装option 添加到select中即可
//
引用类型总结:
原始类型中的String Number Boolean都是伪对象,可以调用相应的方法
Array:数组
String:
语法:
new String(值|变量);//返回一个对象
String(值|变量);//返回原始类型
常用方法:
substring(start,end):[start,end)
substr(start,size):从索引为指定的值开始向后截取几个
charAt(index):返回在指定位置的字符。
indexOf(""):返回字符串所在索引
replace():替换
split():切割
常用属性:length
Boolean:
语法:
new Boolean(值|变量);
Boolean(值|变量);
非0数字 非空字符串 非空对象 转成true
Number
语法:
new Number(值|变量);
Number(值|变量);
注意:
null====>0
fale====>0 true====>1
字符串的数字=====>对应的数字
其他
的NaN
Date:
new Date();
常用方法:
toLocalString()
RegExp:正则表达式
语法:
直接量语法 /正则表达式/参数
直接量语法 /正则表达式/
new RegExp("正则表达式")
new RegExp("正则表达式","参数")
参数:
i:忽略大小写
g:全局
常用方法:
test() :返回值为boolean
Math:
Math.常量|方法
Math.PI
Math.random() [0,1)
全局:
★
decodeURI() 解码某个编码的 URI。
encodeURI() 把字符串编码为 URI。
Number():强制转换成数字
String():转成字符串
parseInt():尝试转换成整数
parseFloat():尝试转换成小数
eval() 计算 JavaScript 字符串,并把它作为脚本代码来执行。
//
//
上午回顾:
BOM(浏览器对象模型)
window对象:窗口
注意:
若是window对象的属性和方法,调用的时候可以省略window
常用属性:
通过window可以获取其他的四个对象
window.location 等价于 location
常用方法:
消息框
alert() 警告框
confirm() 确认框 返回值:boolean
prompt() 输入框 返回值:输入的内容
定时器
设置
setInterval(code,毫秒数):循环
setTimeout(code,毫秒数):延迟 只执行一次
清除
clearInterval(id):
clearTimeout(id):
打开和关闭
open(url)
close()
location对象:定位信息 地址栏
常用属性:
href:获取或者设置当前页面的url
location.href:获取
location.href="url":设置 相当于超链接
history对象:操作历史
常用方法:
go()
事件:
焦点:★
onfocus:获取焦点
onblur:失去焦点
表单事件:★
onsubmit: form表单里的
onchange:改变(下拉选)
页面或者对象加载:★
onload:
鼠标:★
onclick:单击
键盘:
onkeyup:
dom(★)
获取元素的方法(4个) document
操作元素的属性 dom对象.属性;
引用类型:
array
string
substring
全局:
编码2个
强制转化 Number String
尝试 parseXxx
eval() 解析字符串形式的js代码
Math random()