JQ插件封装
- 封装的代码可以写在html中 script代码片段中
- 可以把封装的代码写在单独的js里
如果使用我们封装好的方法
先选定一个jq对象,之后调用我们封装好的方法,比如:
$(‘#box’).mysecolorFn();
封装的注意事项
1.Jq.插件名称.js 可以避免和其他js或者插件的混淆
2.方法可以定义到jq.fn这个对象上(例如:$.fn)
3.在定义插件代码的最前端可以写;目的是其他人代码的不规范,影响到我们插件方法的使用
4.插件代码的结尾可以写;目的是防止代码压缩后出错
5.插件代码写完以后,要放回一个jq对象,目的是保持jq可链式操作;
例如:$(‘#box’).css(‘color’,’red’).css(‘height’,’300px’).css(‘width’,’400px’)
插件的结构(固定结构)(适用于调用单独的js文件形式):
;(function($){
//封装代码
$.fn.extend({})
})(JQuery)
例如:
;(function($){
//封装代码
$.fn.extend({
‘sum’:function(x,y){
Return x+y
}
})
})(JQuery)
(调用html页面文件中进行封装)
$.fn.extend({})
例如:
$.fn.extend({
‘sum’:function(x,y){
Return x+y
}
})
插件封装支持链式操作
jQuery each()
$(‘div’).each(function( i,obj){
//方法体可以对i或者obj进行引用
})
参数i obj 可选 参数可以为空
I:表示当前元素下标
Obj:表示当前元素
$(‘div’).each(function( i,obj){
//方法体可以用this;来取得当前元素
})
Jquery ajax
在原生js中的ajax的使用方法
- 创建请求对象
- 建立连接open()方法[是否是同步或者异步]
- 发送请求
- 获取服务端的数据
Onreadystatuschange事件
If(readystate==4&&status==200)
{
}
Jquery中
$.ajax(参数)
参数是json形式
Type:GET/POST
Async:是否是异步 boolean
Success(res)方法,ajax请求成功后会执行success()方法
Res就是服务端返回的数据
Error(err)方法,ajax请求失败后会执行error()
Err是错误信息
取xml格式数据与json数据方法步骤基本相同 只有url路径文件不同
url:3.xml
在success()方法里取服务端数据
$(res).find(‘title’).text();//方式1
$(‘title’,res).text();//方式2