欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  web前端

关于jquery DOM&事件的讲解

程序员文章站 2022-03-26 13:01:52
...
在学习中经常会遇到jquery DOM&事件,本篇将会详解jquery DOM&事件。

库和框架的区别?

库就是提供了很多方法,相当于仓库里有各种小工具,需要什么工具的时候就直接用。

框架就是搭好了一个架子,大的主体已经确定,只需要往里面填充各种工具。

jquery 能做什么? jquery 对象和 DOM 原生对象有什么区别?如何转化?

jquery可以遍历HTML文本、DOM节点的操作、事件的处理、动画也以及ajax功能,让你不用考虑兼容性在更多的平台去使用它。
特点是:轻量级(32kb)、兼容css3、跨浏览器、

jquery 对象和 DOM 原生对象的区别是jqery对象是原生对象经过包装后的对象,它拥有的是jquery对象专属的一些方法,使用起来很方便。

query直接使用数组的方法([索引数下标])将转化为原生DOM对象,如果使用eq方法则结果还为query对象。而原生对象转化为jquery对象只需要用$()包裹住就可以了。
如:

jquery对象转原生 > $(#head)[0]

原生对象转jquery > $(原生对象)

jquery中如何绑定事件?bind、unbind、delegate、live、on、off都有什么作用?推荐使用哪种?使用on绑定事件使用事件代理的写法?

在jquery中可以绑定事件用如下写法:

$("button").click(function() {
    alert(1);
} );
$("button").bind('click', function(e){    console.log(e);
    alert(2);
});
$("button").on('click', function(){    console.log(e);    console.log(this);    console.log($(this));
});

bind 为元素添加一个绑定事件 (1.7版本之后建议使用on代替bind)

unbind 解除一个元素绑定事件 (1.7版本前使用的方法)

delegate 相当于事件代理(可指定元素)为元素添加一个或多个绑定事件 (1.7版本之后建议用on代替)

live 相当于使用了事件代理(对于根节点),为元素添加一个或多个绑定事件 (在1.7版本之后被废除,用on代替)

on 在被选元素及子元素上添加一个或多个事件处理程序 (最建议使用的方法)

off 是用来移除.on()方法添加的事件处理程序

on()的方法把上面几种方法统一了,所以现在推荐使用.on()的方法,写法为:

$( "#members" ).on( "click","li a",function( e ) {} );
这里注意子元素的位置在click之后,代表使用了事件代理

jquery 如何展示/隐藏元素? jquery 动画如何使用?

展示元素: $(selector).show(speed,callback);

隐藏元素: $(selector).hide(speed,callback);

展示和隐藏切换: $(selector).toggle(speed,callback);

淡入淡出:

$(selector).fadeIn(speed,callback); //淡入
$(selector).fadeOut(speed,callback); //
淡出$(selector).fadeToggle(speed,callback); //
淡入淡出切换$(selector).fadeTo(speed,opacity,callback);  //渐变到透明度

滑入滑出:

$(selector).slideDown(speed,callback); //滑入$(selector).slideUp(speed,callback); //滑出$(selector).slideToggle(speed,callback); //切换

可选的 speed 参数规定隐藏/显示的速度,可以取以下值:"slow"、"fast" 或毫秒。
可选的 callback 参数是隐藏或显示完成后所执行的函数名称。

jquery动画 $(selector).animate({parmas},speed,callback);

params为必选参数,是动画的css属性。speed是可选参数,规定动画效果的时长,取slow、fast、或毫秒值。classback为动画完成后所执行的函数。

如何设置和获取元素内部HTML内容?如何设置和获取元素内部文本?

设置或者获取HTML内容:$(selector).html()

设置或者获取文本内容:$(selector).text()

有参数代表设置,没有参数代表获取。

如何设置和获取表单用户输入或者选择的内容?如何设置和获取元素属性?

设置或者获取表单用户输入内容$('#input').val()

设置或者获取表单选择内容$('input:checked')或$(':checked')

设置或者获取元素属性 $("div").attr(e,d) e代表获取,d代表需要设置的属性,为空时代表获取

获取带有某个属性的元素$('[data-img]')或者$('[data-img="xxx“]')

本篇讲解了jquery DOM&事件,更多相关知识请关注。

相关推荐:

一些相关的模块化基础

dom对象的innerText和innerHTML有什么区别?

一些关于JS的基础问题

以上就是关于jquery DOM&事件的讲解的详细内容,更多请关注其它相关文章!

相关标签: jquery dom 事件