<script type="text/javascript"> $(function(){ //一、 隐藏 hide() $('#b2').click(function() { // 隐藏标签 hide() // 一、hide() //$('#d1').hide(); // 二、hide(speed) :speed秒数 以毫秒为单位 动画执行的时间 // $('#d1').hide(3000); // 三、hide(speed, callback) // speed秒数 以毫秒为单位 动画执行的事件 // callback:回调函数 当动画执行结束后调用该函数 $('#d1').hide(3000, function(){ alert('动画结束') }); // 二、显示 show() $('#b1').click(function(){ $('#d1').show( ) }) }) // 三、显示与隐藏 $('#b3').click(function(){ // 显示或隐藏 toggle() $('#d1').toggle(); }) }) </script>
<script type="text/javascript"> $(function () { // 淡出 $('#b2').click(function () { // 淡出 fadeOut() // fadeOut(speed) // fadeOut(speed, callback) $('#d1').fadeOut(1000) }) $('#b1').click(function () { // 淡入 fadeIn() // fadeIn(speed) // fadeIn(speed, callback) $('#d1').fadeIn(1000) }) // 淡入与淡出 $('#b3').click(function () { $('#d1').fadeToggle(1000) }) // 透明度变化 $('#b4').click(function () { $('#d1').fadeTo(1000, 0.3); }) }) </script>
<script type="text/javascript"> // 划出 slideUp $('#b2').click(function () { // slideUp(speed, callback) $('#d1').slideUp(1000) }) $('#b1').click(function () { $('#d1').slideDown(1000) }) $('#b3').click(function () { $('#d1').slideToggle(1000) }) </script>
<script type="text/javascript"> $(function(){ $('#id1').click(function () { // 更改div的某一个样式 // animate(更改的样式及样式值(数据类型为字典格式),动画的持续时间) $('#div1').animate({width:'500px'}, 3000); }) $('#id2').click(function () { // 更改div的宽度 高度 透明度 背景颜色 // 若是想要经过动画改颜色须要引入另外一个文件 $('#div1').animate({width:'500px', height:'500px', backgroundColor: 'blue', opacity:0.3}, 3000); }) $('#id3').click(function () { // 相对值:在上一次的基础上进行操做 // 位置向右下角位置移动20px // $('#div1').css({'position':'relative'}) $('#div1').animate({width:'+=30px', height:'+=30px', left:'+=30px', top:'+=30px'},2000) }) // 动画队列 $('#id4').click(function(){ $('#div1').animate({width:'500px'},1000); $('#div1').animate({height:'500px'},1000); $('#div1').animate({top:'500px'},1000); $('#div1').animate({left:'500px'},1000); }) // 动画队列的设置:进入或移出动画队列 // animate会自动将动画放到动画队列中,但css不属于动画 // 不会自动放到动画队列中,须要手动设置。 $('#id5').click(function(){ $('#div1').animate({width:'500px'},3000); $('#div1').animate({height:'500px'},3000); // queue 队列 每一个能够设置动画的标签都有 // 将css放到动画队列中 $('#div1').queue(function(){ $('#div1').css('background-color','blue'); // 让后面的动画继续执行 $('#div1').dequeue(); }) $('#div1').animate({width:'100px'},3000); $('#div1').animate({height:'100px'},3000); }) // 结束动画 // 一、clearQueue // 二、stop(boolean, boolean); // 三、finish() $('#id6').click(function () { // clearQueue() // 当前正在执行的动画继续执行直到完成,但后面的动画再也不执行 $('#div1').clearQueue(); }) $('#id7').click(function () { // 当前正在执行的动画当即结束,继续执行后面的动画 // $('#div1').stop(); //$('#div1').stop(false,false); //$('#div1').stop(false); // 结束全部动画 //$('#div1').stop(true); //$('#div1').stop(true, false); // 当即完成当前动画,继续执行后面的动画 // $('#div1').stop(false, true); // 当即完成当前动画,再也不继续执行后面的动画 //$('#div1').stop(true, true); }) $('#id8').click(function(){ // finish() // 直接完成全部动画 $('#div1').finish(); }) // jQuery:链式写法 // 当主语一致时候,可使用链式结构 $('#id9').click(function(){ $('#div1').animate({width:'500px'},1000).animate({height:'500px'},1000).animate({top:'500px'},1000).animate({left:'500px'},1000); }) $('#id10').click(function () { //延迟动画 $('#div1').delay(5000).animate({width:'500px'}); }) }) </script>
数据请求:
异步加载数据:页面卡顿少
同步加载数据:当数据量较大,或者网络很差,有可能页面卡顿
同步请求:交易*/异步加载
load(url, [callback])
url:接口 路由
callback:回调函数 不管数据是否请求成功,只要请求完成,就会执行javascript
<script type="text/javascript"> $('button').click(function(){ // 一、load加载整个html文件 // $('div').load('loadTest.html'); //二、load加载部分html文件 //$('div').load('loadTest.html #p2'); //三、回调函数 $('div').load('loadTest.html', function(responseText, status, XMLHttpRequest){ console.log('加载完成') console.log(responseText); //请求的数据 console.log(status); // 请求结论 success console.log(XMLHttpRequest); // 请求相关参数 console.log(XMLHttpRequest.status); // 200 /* * status: * 200 : 请求正确并成功 * 4XX:请求错误,路径参数错误 * 5XX: 服务器错误 * 3XX: 请求中转 * */ /* * readyState: * 1:服务器链接已创建 * 2: 请求已接收 * 3:请求处理中 * 4:请求已完成,且响应已就绪 * */ }) }) </script>
<!--引入后当即执行--> <!--<script src="jsTxst.js" type="text/javascript" charset="utf-8"></script>--> <script type="text/javascript"> $('button').click(function () { //getScript('js文件路径,[callback]') //getScript是全局函数,用$调用该函数 // 若是js文件加载成功,会自动执行js文件中的内容 //一、无回调函数 $.getScript('jsTxst.js'); //二、有回调函数 $.getScript('jsTxst.js',function(){ alert('完成了') }); }) </script>
<script type="text/javascript"> // Json:数组或字典 [] {} // JsonArray: 数组 最外层为 [] // JsonObject: 字典 最外层为 { // JsonString: 字符串 很是少见 //getJson('json文件路径',[]) //getJson是全局函数,用$调用该函数 $('button').click(function(){ // 若是咱们须要使用json文件中的数据,那么咱们须要使用回调函数 // json请求返回的数据是放在回调函数中的。放在函数中的第一个形参 $.getJSON('a.json', function(data) { // data:存放返回的数据 for(var i=0; i < data.length; i++){ console.log(data[i]['name']); var $p = $('<p>'+data[i]['name']+ '</p>') $('div').append($p); } }); }) </script>
<script type="text/javascript"> /* 说明: 以xampp集成环境为例子 须要将该文件放到xampp目录下的htdocs目录中 在浏览器中输入你文件的路径 如 http://localhost/a/getAndPost.html */ /* * get: url必须是完整的 * post:url是分开的 * IP地址与参数是分开的 * */ $('#b1').click(function(){ // get请求 // $.get(url, [data], [callback]) // url:请求地址 // data:接口的参数 //当get请求须要参数的时候,参数的传入格式为: // data参数格式:{key:value, key2:value2...} // key值: // callback:回调函数:回调函数中有一个参数,存放请求下来的数据 // php文件只能在服务器端执行 /*$.get('getTest.php', function(data){ console.log(data); })*/ var $i1 = $('#user').val() var $i2 = $('#pass').val() $.get('get.php',{username:$i1, content:$i2}, function(data){ console.log(data); }) }) // post请求 $('#b2').click(function(){ // post请求 // $.post(url, [data], [callback]) // url:请求地址 // data:接口的参数 //当post请求须要参数的时候,参数的传入格式为: // data参数格式:{key:value, key2:value2...} // key值: // callback:回调函数:回调函数中有一个参数,存放请求下来的数据 var $i1 = $('#user').val() var $i2 = $('#pass').val() $.post('nextPost.php',{username:$i1, content:$i2}, function(data){ console.log(data); }) }) </script>
<script type="text/javascript"> // ajax : 全局函数 $.ajax(options) // options: 数据类型为字典类型 元素ajax所须要的各类参数 $('#b1').click(function(){ // 获取输入框中的值 var $i1 = $('#user').val(); var $i2 = $('#pass').val(); $.ajax({ // type: 设置请求类型 get post type:"get", // url 接口 url:"get.php", // async 是否执行异步请求 async:true, // data:接口所需接收的参数 数据格式为字典类型 data:{username:$i1, content:$i2}, // dataType 返回的数据格式类型,默认就是json dataType:'json', // success 数据请求成功时调用,须要接受一个函数类型的参数 // 该函数有一个默认的形参,形参表明请求时返回的数据 success: function(data){ console.log(data); }, // error 当数据请求失败时调用,须要接受一个函数类型的参数 error: function(){ console.log('请求失败') } // 后期必需要写的参数: type, url data success }); }) $('#b2').click(function(){ // 获取输入框中的值 var $i1 = $('#user').val(); var $i2 = $('#pass').val(); $.ajax({ // type: 设置请求类型 get post type:"post", // url 接口 url:"nextPost.php", // async 是否执行异步请求 async:true, // data:接口所需接收的参数 数据格式为字典类型 data:{username:$i1, content:$i2}, // dataType 返回的数据格式类型,默认就是json dataType:'json', // success 数据请求成功时调用,须要接受一个函数类型的参数 // 该函数有一个默认的形参,形参表明请求时返回的数据 success: function(data){ console.log(data); }, // error 当数据请求失败时调用,须要接受一个函数类型的参数 error: function(){ console.log('请求失败') } // 后期必需要写的参数: type, url data success }); }) </script>
<script type="text/javascript"> $('#button').click(function(){ $(document).ajaxStart(function(){ console.log('开始请求'); }) $(document).ajaxStop(function(){ console.log('结束请求') }) // 表单序列化 $.ajax({ type:"post", url:"post.php", async:true, // serialize 表单序列化操做 // 注 全部的input要写在form 中 input 要有name属性 // 而且name属性的值要根据接口所须要的参数的key值来 // 肯定,不能随意写。 data:$('form:eq(0)').serialize(), success:function(data){ console.log(data); } }); }) </script>