AJAX学习
AJAX = 异步 JavaScript 和 XML(Asynchronous JavaScript and XML)。
AJAX 是与服务器交换数据的技术,它在不重载全部页面的情况下,AJAX 通过后台加载数据,并在网页上进行显示, 实现了对部分网页的更新。jQuery 提供多个与 AJAX 有关的方法。
jQuery-AJAX load()方法
- jquery ajax中的load方法将返回的数据放在指定的元素中,不是全局函数。
- get()同样是jquery的ajax的函数,它的作用把返回的数据交给用户处理,是全局函数
- load 的实现几乎等同于get的实现,在ajax获取机制上没有区别
- load方法的另一个和get 的重要区别:load可以指定要插入文档的某个部分。
JQuery---AJAX 的get()和post()方法
主要用于通过HTTP GET 或 POST请求
- 从服务器里面请求数据。
- GET: 从指定的资源请求数据,GET基本上用于从服务器获取数据
- POST: 向指定的资源提交要处理的数据,POST也可以从服务器获取数据
- 常用于连同请求一起发送数据。不会缓存(cookie)数据
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src="jquery-1.8.3.min.js"></script>
<script>
//1.在webstorm的相同文件夹下创建 index.html文件、和demo1.txt文件、jquery1.8.3包
$(document).ready(function(){ //入口函数
$("#div1").mouseover(function(){
url = "demo1.txt"
$("#div1").load(url) //ajax加载函数
})
$("#div1").mouseout(function(){
$("#div1").html(" ")
})
$("#button1").click(function(){
url = "demo1.txt"
$("#div1").load(url)
})
//获取id="p1"的元素内容,然后加载到指定的div里面
$("#button2").click(function(){
$("#div1").load("demo1.txt #p1")//在文件名后面,拼接一个该元素的id即可
})
//在load()方法中callback是可选的参数,callback(回调函数)规定当load方法完成后所需要执行的
//回调函数。callback回调函数的参数设置:
// responseTxt:包含回调成功后的返回结果内容(响应类容)
//statusTxt:回调状态
//eg: 首先load()方法完成后显示一个提示框,如果load方法执行成功,则显示"外部内容加载成功"
//如果失败,显示'错误信息'
//node : 成功 ----"success" 失败-----‘error’
$("#button3").click(function(){
$("#div1").load("demo1.txt",function(responseTxt,statusTxt){
if(statusTxt =='success'){
alert("外部内容加载成功")
}
if(statusTxt =='error'){
alert('错误信息')
}
})
})
/*JQuery---AJAX 的get()和post()方法: 主要用于通过HTTP GET 或 POST请求
* 从服务器里面请求数据。
* GET: 从指定的资源请求数据,GET基本上用于从服务器获取数据
* POST: 向指定的资源提交要处理的数据,POST也可以从服务器获取数据,并且
* 常用于连同请求一起发送数据。不会缓存(cookie)数据。
* */
//ajax---> get()方法, 语法: $("selector").get(url,callback)
// url ---必须参数, callback----可选参数
//eg: 使用get()方法从服务器上的一个文件中获取数据
$("#button4").click(function(){
jQuery.get("demo.php",function(data,status){
alert("数据:"+data+"\n状态:"+status)
})
})
/* $ === JQuery--全局函数
总结:
* jquery ajax中的load方法将返回的数据放在指定的元素中,不是全局函数。
* get()同样是jquery的ajax的函数,它的作用把返回的数据交给用户处理,是全局函数
*
* load 的实现几乎等同于get的实现,在ajax获取机制上没有区别。
* load方法的另一个和get 的重要区别:load可以指定要插入文档的某个部分。
* */
//图片轮播
//方法一: 通过CSS3的animation属性以及 @keyframes规则实现
/*首先学习 CSS3当中的@keyframes和animation
*
* @keyframes规则---用于创建动画,在@keyframes中规定某个CSS样式,就能创建
* 由当前样式逐渐变成新样式的动画效果。
*
* 浏览器支持:
* Internet Explorer 10 (IE10)、Firefox 、Opera 支持 animation属性以及 @keyframes规则
*
* chrome、Safari 需要加前缀 "-webkit-"
* 注: IE9 以及更早的版本,不支持 animation属性以及 @keyframes规则
*
*
* @keyframes 语法:
* @keyframes 函数名(自定义){
* 内容
* }
*eg:
* @keyframes firstAnimation{
* from {background: yellow;}
* to{ background: red;}
* }
*
* // safari和chrome
* @-webkit-keyframes firstAnimation{
* from {background: yellow;}
* to{ background: red;}
* }
* */
//CSS3 动画
/*
* 用@keyframes规则传创建动画时,需要将其(函数名)绑定到某个选择器,否则不会产生动画效果。
*
*
* */
//方法二: 通过Jquery的新形式实现。
})
</script>
</head><body>
<div id="div1" style="background-color: rgb(204,204,153);
width: 200px;height:400px;overflow: scroll"></div>
<button id="button1">获取外部信息</button>
<button id="button2">获取指定外部信息</button>
<button id="button3">获取外部信息有回调函数</button>
<button id="button4">发送HTTP get请求并获取返回结果</button>
</body>
</html>
图片轮播学习
<head>
<style>
#screen{height:999px; width:9999px;animation:myfrist 8s:}
#screen img {float:left;}
#main{height:300px; width:200px;overflow:hidden; }
@keyframs myfrist{
25%{transform:translateX(Opx)}
30%{transform:translateX(-300px)}
50%{transform:translateX(-300px)}
55%{transform:translateX(-600px)}
75%{transform:translateX(-600px)}
80%{transform:translateX(-900px)}
100%{transform:translateX(-900px)}
}
</style>
</head>
<body>
<div id = 'main'><div id = 'screen'>
<img src = "../images/list_1.jpg height:200; width:300;>
<img src = "../images/list_2.jpg height:200; width:300;>
<img src = "../images/list_3.jpg height:200; width:300;>
<img src = "../images/list_4.jpg height:200; width:300;>