1.动态DOM节点
创建节点
dom方式: document.createElement("p"); <=> <p></p> jquery方式: $("<p>").text("内容"); <=> <p>内容</p> var div = $('<div></div>')
复制
添加节点
parent. append (child) 向父元素( parent ) 加入子元素( child ),插入后子元素为父元素的最后一个孩子 child.appendTo(parent) 将子元素( child)插入到父元素( parent )下,插入后子元素为父元素的最后一个孩子 parent. prepend(chi1d) 向父元素( parent )加入子元素( child ),插入后子元素为父元素的第一个孩子 child.prependTo (parent) 将子元素( child)插入到父元素( parent )下,插入后子元素为父元素的第一个孩子 brother.after (obj) 在某个兄弟节点( brother )之后插入目标对象( obj ) brother. before(obj) 在某个兄弟节点( brother )之前插入目标对象( obj )
复制
删除节点
$('ul).empty() $('ul').remove() $('ul').detach() //方法移除被选元素,包括所有文本和子节点。
复制
替换节点
//把div 元素替换成p元素 $('div').replacewith($('<p></p>')) //用p元素替换掉div元素 $('<p></p>' ).replaceAl1($("div"))
复制
复制节点
//克隆—─个Li元素//接受两个参数 参数1:自己身上的事件要不要复制,默认是于alse参数 2:所有子节点身上的事件要不要复制,默认是true $("li').clone()
复制
2.jQuery对象与Dom对象转换
jQuery对象->Dom对象
const jqObjToDom = $(".d1")[0]; //jquery对象转Dom对象 方法一 const jqObjToDom = $(".d1").get(0); //jquery对象转Dom对象 方法二
复制
Dom对象->jQuery对象
const domObj = document.querySelector(".d2"); //dom对象 const domToJqObj = $(domObj);
复制
3.元素尺寸&位置
元素尺寸
操作元素的宽和高
//不包含 padding 不包含 border $('div').width()//获取 $('div').width(200)//设置 //包含 padding 不包含 border $('div').innerWidth()//获取 //获取元素的外置宽和高 $('div').outerWidth()//获取div元素内容位置的高,包含padding和border $('div').outerrWidth(true)//获取div元素内容位置的高,包含padding和border和margin
复制
4.元素位置
元素相对页面的位置
offset() 读写 返回一个对象,里面包含一个x信息和一个y信息, 相对页面左上角坐标 设置值 :$(selector).offset({top:xxx,left:xxx}) top|left值: 不写单位 获取值 $('div').offset().top
复制
元素相对于父元素的偏移量
position() 只读 返回一个对象,里面包含一个x信息和一个y信息, 相对元素定位关系获坐标值, 如果你定位元素 right和bottom, 那么会自动计算成left和top
复制
获取页面卷去的高度和宽度
$(document).scrollTop();// 获取滚动条到顶部的垂直高度 (即网页被卷上去的高度) $(document).scrollLeft();//获取滚动条到左边的垂直宽度
复制
通过css样式改变元素位置
css() 读写 $(selector).css({'left':xxx,'top':xxx})
复制
5.jQuery效果动画
基本的隐藏和显示
$('div').hide( 隐藏匹配的元素 $('div').show0 显示匹配元素 $('div').toggleo 切换隐藏或显示状态
复制
淡入淡出
$('div').fadeIn() 通过淡出的方式隐藏匹配的元素 $('div').fadeOut() 通过淡入的方式显示匹配元素 $('div').fadeToggle() 切换隐藏或显示状态
复制
滑动
$('div').slideDown0 用滑动动画隐藏匹配的元素 $('div').slideUp() 用滑动动画显示匹配元素 $('div').slideToggle() 切换隐藏或显示状态
复制
animate() 方法
$(selector).animate({params},speed,callback); //定义—个自定义动画 $( '.show' ).click(function () { s( 'div ' ).animate({ width: 580,height: 300 },1000,'linear' , function () { console.log("动画运动完毕") }) })
复制
停止动画和结束动画
stop //立刻定制动画 $( " div " ).stop() //就停止再当前状态 finish //立刻结束动画 $("div " ).finish() //停止在动画结束状态
复制
5.ajax
$.get() 方法
$.get() 方法通过 HTTP GET 请求从服务器上请求数据。 语法2: $.get(url, [parma], callback); 1直接使用$.get方法来发送—个请求 参数一:请求地址 参数二:请求时携带的去数 参数三:请求成功的回请 参数四:返iN的或据类型 $.get( './ajax.php' , {id: 10 }, function (res) ( console.log(res) ,'json')
复制
$.post() 方法
//直接使用$.post方法来发送一个请求 参数一:请求地址 参数二:请求时携带的参数 参数三:请求成功的回调 参数四:返回的数据类型 $.post( ' ./ajax.php' , {id: 10 }, function (res) { console.log(res)}, "json ")
复制
$.ajax()方法
jquery.ajax([settings])。发请求并且能得知成功还是失败。 type:类型,"POST"或者"GET",默认是"GET". url:发送请求的地址。 data:是一个对象,连同请求发送到服务器的数据 dataType:预期服务器返回的数据类型。如果不指定,jQuery将自动根据HTTP包含的MIME信息来智能判断,一般我们采用json个数,可以设置为"json".. success:是一个方法,请求成功后的回调函数。传入返回后的数据,以及包含成功代码的字符串。 error:是一个方法、请求失败时调用此函数。传入XMLHttpRequest对象。
复制
$.ajax ({ type : "POST”, url : "service.php" , dataType : "json", data { name : $ ("#ataffName" ) .val() , number :$("#staffNumber" ) .val (), sex : $("#staffSex" ) .val ( ) , job : $("#ataffJob" ) .val ( ) , } , suecess: funetion (data) { if(data .aucceaa){ $("#createResult" ) .html (data .msg) ; }else{ $("createReault" ) .html (“出现错误"+data.mag); } } , errOr:function (jqXHR){ console.log("发生错误:"+jqXHR. status); } });
复制
跨越
url?callback=func jsonp: 'callback' jsonpCallback:'func' '
复制
//使用$.ajax方法也可以发送jsonp请求 //只不过dataType要写成 jsonp $.ajax({ url: "./jsonp.php " , dataType: 'jsonp ' , data: { name : "Jack " , age: 18 }, success (res) { console.log(res) }, jsonp: "cb" , // jsonp请求的时候回调函数的key jsonpCallback : 'fn'// jsonp请求的时候回调函数的名称 })
复制
6.jquery拓展
扩展给他自己本身
扩展给自己本身使用jQuery .extend这个方法 扩展完后的内容只能用或者jQuery来调用 //jQuery .extend接受—个参数,是一个对象,对象里面是我们扩展的方法 jQuery.extend({ max:function (...n) { return Math.max.apply(null,n) }, min:function (...n) { return Math.min .apply(null,n)} }) 扩展完毕我们就可以使用了 const max = $.max(4,5,3,2,6,1)console.log(max)// 6 const min = $.min(4, 5,3,2,6,1)console.log(min) // 1
复制
扩展给元素集
扩展完毕以后给元素的集合使用 也就是我们用$("1i")这样的选择器获取到的元素集合来使用 使用jQuery.fn.extend()方法来扩展 //jQuery .fn.extend()接受一个参数,是一个对象,对象里面是我们球扩展的方法 jQuery.fn.extend({ checlked: function(){ //return关避字是为了保证路式编程 //后面的代码才是业务逻辑 return this.each(function(){ this.checked = true }) } }) 扩展完毕我们就可以使用了 //靠元素集台来调用 S( "input[type=checkbox]" ).checked() //执行完毕之后,所有的复远框就都是选中状态了
复制
jquery中 与 与 与.fn的区别是什么?
1.Jquery的方法是可以拓展的,从调用声明创建方法的方式来看,可以归结为两类:一类直接由 符 调 用 ; 另 一 类 由 符调用;另一类由 符调用;另一类由("")来调用,
2.跟面向对象语言中的静态方法和实例方法有点类似,是的,如果从java类的角度认识调用创建的Jquery方法可能更好理解些,尽管Javascript没有明确的类的概念。
拓
展
的
方
法
是
静
态
方
法
,
可
以
使
用
拓展的方法是静态方法,可以使用
拓展的方法是静态方法,可以使用直接调用,一般使用$.extend({});
3. . f n 拓 展 的 方 法 是 实 例 方 法 , 必 须 由 “ 对 象 ” .fn拓展的方法是实例方法,必须由“对象” .fn拓展的方法是实例方法,必须由“对象”("")来调用,一般使用 . f n . e x t e n d ( ) 。 .fn.extend({ })。 .fn.extend()。.fn是jQuery原型对象