1.在HTML中引入JS
(1)方法一:
<script type="text/javascript">
.......
</script>
(2)方法二:
<script type="text/javascript" src="xx.js">
</script>
说明:src路径可以为绝对路径或者相对路径。
PS:这两种方式只能二选一。作用域为写在head标签里面。
2.特殊的值
值 | 含义 |
undefined | 未定义 |
null | 空值 |
NAN(Not a number) | 非数字,非数值 |
3.关系比较
==(等于):只比较值。
===(全等于):既比较值,也比较数据类型。
4.关系比较
(1)&& 且运算
case 1: 表达式全为真,返回最后一个表达式的值。
case 2: 表达式有一个为假时,返回第一个表达式为假的值。
(2)|| 或运算
case 1: 表达式全为假,返回最后一个表达式的值。
case 2: 表达式有一个为真时,返回第一个表达式为真的值。
共用点: 当且运算 或者 或运算有结果时,不再执行后面的表达式
ps: 0、null、undefined和空字符串的默认值都认为是false。
5.数组
定义:
方式一:空数组
var 数组名 = [];
方式二:定义数组时直接赋值
var 数组名 = [1,'abc',true];
6.函数
1.定义函数的方式:
(1)方式一:
function 函数名(形参列表){
函数体
}
ps:定义有返回值类型的函数,只需要在函数体内直接使用return语句即可。
(2)方式二:
var 函数名 = function (形参列表){函数体}
ps:JS中的函数不允许重载。
2.隐形参数 argument:
定义:在function函数内不需要定义,可以直接使用,用来获取所有参数的变量。类似于JavaSE中的可变参数,是一个数组。
隐形参数和可变长参数都是操作数组的,数组有的属性,隐形函数都有。比如隐形参数求长度也可以直接.length,可以通过下标查看每一个数组元素。
7.自定义对象
(1)Object形式
对象的定义 :
var 变量名 = new Object(); //对象实例化
变量名.属性名 = 值; //定义属性
变量名.函数名 = function(){} //定义一个函数
var obj = new Object();
obj.name = "Jackson";
obj.age = 22;
obj.fun = function(){
......
}
对象的访问 :
变量名.属性/函数名();
obj.age;
obj.fun();
(2){}形式
对象的定义 :
var 变量名 = { //空对象
属性名: 值, //定义一个属性
属性名: 值, //定义多个属性用,连接
函数名: function(){} //定义一个函数
};
var obj = {
name : "Jackson",
age : 22,
fun : function(){
......
}
};
对象的访问 :
变量名.属性/函数名();
obj.age;
obj.fun();
8.事件
常用事件:
事件名称 | 事件简述 | 触发时机 |
onload | 加载完成事件 | 页面加载完成后,常用于做页面js代码的初始化操作 |
onclick | 点击事件 | 按钮的点击响应操作 |
onblur | 失去焦点事件 | 输入框失去焦点后验证其内容是否合法 |
onchange | 内容发生改变事件 | 下拉列表和输入框内容发生改变后操作 |
onsubmit | 表单提交事件 | 表单提交后,验证所有表单是否合法 |
事件注册(事件绑定):
定义:通俗来讲,就是告诉浏览器,当事件响应后要执行哪些代码。
(1)静态注册事件
定义:通过html标签的事件属性直接赋予事件响应后的代码。
(2)动态注册事件
定义:先通过js代码得到标签的dom对象,然后再通过dom对象.事件名=function(){}这种方式赋予事情响应后的代码。
步骤:1.获取标签对象。
2.标签对象.事件名=function(){}。
1. onload事件:
(1)静态注册事件
<script type="text/javascript">
function onloadFun(){ //自定义的事件
......
}
</script>
<body onload="onloadFun();">
(2)动态注册事件
//这种注册事件的方式基本是固定写法的
window.onload = function(){
......
}
2.onclick事件:
(1)静态注册事件
<script type="text/javascript">
function onclickFun(){ //自定义的事件
......
}
</script>
<body>
<button onclick="onclickFun();">按钮名称</button>
</body>
(2)动态注册事件
window.onload = function(){
var btnObj = document.getElementById("btnName");//获取DOM对象
btnObj.onclick = function(){
......
}
}
getElementById:通过id属性获取标签对象
3.onblur失去焦点事件:
(1)静态注册事件
<script type="text/javascript">
function onblurFun(){ //自定义的事件
......
}
</script>
<body>
用户名:<input type="text" onblur="onblurFun();"><br/>
密码:<input id="password" type="text"><br/>
</body>
(2)动态注册事件
window.onload = function(){
//获取标签对象
var passwordObj = document.getElementById("password");
passwordObj.onblur = function(){
......
}
}
4.onchange内容发生改变事件:
(1)静态注册事件
<head>
<script type="text/javascript">
function onchangeFun(){ //自定义的事件
......
}
</script>
</head>
<body>
<select onchange="onchangeFun();">
<option>....</option>
......
<option>....</option>
</select>
</body>
(2)动态注册事件
window.onload = function(){
var selObj = document.getElementById("selName");//获取标签对象
selObj.onchange = function(){
......
}
}
5.onsubmit表单提交事件:
(1)静态注册事件
<head>
<script type="text/javascript">
function onsubmitFun(){ //自定义的事件
......
}
</script>
</head>
<body>
<form action="http://loaclhost:8080" method="get" onsubmit="return onsubmitFun();">
<input type="submit" value="静态注册"/>
</form >
</body
(2)动态注册事件
window.onload = function(){
//获取标签对象
var formObj = document.getElementById("formName");
formObj.onsubmit = function(){
......
}
}
<body>
<form action="http://loaclhost:8080" id="formName">
<input type="submit" value="动态注册"/>
</form >
</body
9.DOM模型
定义:简单来讲,就是把文档中的标签、属性和文本,转换成对象来管理。
1)Document对象
(1)管理了所有的HTML文档内容。
(2)是一种树结构的文档,有层级关系。
(3)可以将所有的标签都对象化。
(4)可以通过document访问所有的标签对象
2)Document对象的主要方法
方法 | 说明 |
document.getElementById(elementId) | 通过标签的id属性查找dom对象,elementId是标签的id属性 |
document.getElementByName(elementName) | 通过标签的id属性查找dom对象,elementName是标签的name属性 |
document.getElementByTagName(tagName) | 通过标签名查找dom对象,tagName是标签名 |
document.createElement(tagName) | 通过给定的标签名,创建一个标签对象。tagName是要创建的标签名 |
ps:document对象的三个查询方法,如果有id属性,优先使用getElementById方法来查询,如果没有id属性,则优先使用getElementByName来查询,如果id和name都没有,最后再按标签名查询getElementByTagName。三个方法,一定要在页面完成加载后才能查询到标签对象。
10.备忘录
1)设为不可编辑:
<input type="radio" name="firstDegree" value="是" title="是">
if( $('input[name="firstDegree"]:checked').val() == '是' ){
document.getElementById("addition").disabled="disabled";
alert("第一学历只能有一条分录");
}
或者
document.getElementById('jobQualificationCategory').readOnly=true;
2)隐藏和显示div:
$("#divIdName").show();
$("#divIdName").hide();