一、闭包:一个可以使用另外一个函数作用域中的变量的函数。
如下面的代码函数b就是闭包,但是这个前提是:当函数a的内部函数b被函数a外的一个变量引用 的时候,就创建了一个闭包。
意思是说b要变成闭包的话,就必须被外包所引用,即c引用:
例:
function a(){
var i = 1;
function b(){
i++;
alert( i );
}
return b;
}
var c= a();
alert(c());
闭包的两个点:
第一点是闭包的活动对象没有被销毁;
第二点是作用域链的关键是要遇到var 声明;
注:变量不会被回收,在退出函数之前,将不使用的局部变量全部删除。
二、匿名函数:没有具体名称的函数
(function(){
})();
三、JQuery:框架<script type="text/javascript" scr="jquery文件"></script>
1、show 显示
$(" .showBtn" ).click( function(){
$( ".shBtn" ).show( 1000 );
});
2、hidden 隐藏
$(" .hiddenBtn ").click( function(){
$( ".shBtn" ).hide( 1000 );
});
3、toggle 显示和隐藏
$(" .togBtn" ).click( function(){
$( ".shBtn" ).toggle( );
});
4、fadeIn 淡入
$(" .fShowBtn" ).click( function(){
$( ".fShBtn" ).fadeIn( 2000 );
})
5、fadeOut 淡出
$(" .fHiddenBtn ").click( function(){
$( ".fShBtn" ).fadeOut( 2000 );
});
6、fadeToggle 淡入和淡出
$(" .fTogBtn" ).click( function(){
$( ".fShBtn" ).fadeToggle( 2000 );
});
7、slideUp 向上滑动
$(" .sliderUpBtn" ).click( function(){
$(".sShBtn").slideUp( 1000 );
8、slideDown 向下滑动
$(" .sliderDownBtn" ).click( function(){
$(".sShBtn").slideDown( 1000 );
});
9、animate("执行的动画操作",时间,可选(回调函数))
$(".sShBtn1").animate({left: '200px',height : '100px'}, 1000)
10、stop 停止动画
参数一:clearQueue:如果设置成true,则清空队列。可以立即结束动画。
参数二:jumpToEnd:如果设置成true,则完成队列。可以立即完成动画。
如:stop(true, true);
注:函数里面都可以加入回调callback参数。
show( 1000, function(){
//回调所执行的函数
});
四、Jquery Dom
节点:
parent() 父节点
$("span").parent().css({…});
children() 子节点
$("div").children().css({…});
find() 返回被选元素的后代元 素,一路向下直到后 一个后代
返回属于 <div> 后代的所有 <span> 元 素:
$("div").find("span").css({…});
返回 <div> 的所有后代:
$ ("div").find("*").css({…});
next() 查找下一个兄弟元素
$ ("h2").next().css({…})
prev() 查找上一个兄弟元素
$ ("h2").prev().css({…});
siblings() 返回被选元素的所有兄弟元素
$ ("h2").siblings().css({…})
eq() 返回被选元素中带有指定索引号的元素。索引号从0 开始
$("p").eq(1).css(…);
first() 返回被选元素的首个元素
选取首个<div>元素内部的第一个<p>元素:
$("div p").first().css(…);
last() 返回被选元素的后一个元素
选择后一个<div>元素中的后一个<p>元素:
$("div p").last().css(…);
append() 向每个匹配的元素的内部的结尾处追加内容
var span = "<br/><div><span style=\"color:red\">追加的文字</span><button class=\"remove\">移除</button></div>";
$(".message").append( span );
remove() 移除,不会删除,不会占用位置
empty() 清空
attr() 设置属性 、返回属性
五、Ajax
1、被选中的Dom.load( "页面",function(内容,状态 ){
//内容为返回的内容
//状态:如果成功为Success
})
2、getJson("json文件",function(内容,状态 ){
//内容为返回的内容
//状态:如果成功为Success
})
3、get("url",function(内容,状态){
//内容为返回的内容
//状态:如果成功为Success
})
4、post("url",{字典包含的参数},function(内容,状态){
//内容为返回的内容
//状态:如果成功为Success
})
5、ajax({
url:"",
dataType:"数据类型Json",
async:true,//异步,
type:post,//get 、post
data:{传输的参数字段字典},
success:function( 内容参数 ){
//成功以后返回的
},
error:function( 内容参数 ){
}
});
总结:
200 :请求成功
302 :请求被跳转
404 :页面找不到,请求错误
403 :该访问请求没有权限
500 :服务器程序错误
多看多做