jQuery入门

问答

1. 说说库和框架的区别?

库是将代码集合成的一个产品,面向对象的代码组织形式而成的库也叫类库。面向过程的代码组织形式而成的库叫函数库。
框架则是为解决一个(一类)问题而开发的产品,框架用户一般只需要使用框架提供的类或函数,即可实现全部功能。框架是库的升级版。
开发者在使用框架的时候,必须使用这个框架的全部代码。

2. jquery 能做什么?

1.方便快捷获取DOM元素
  如果使用纯JavaScript的方式来遍历DOM以及查找DOM的某个部分编写很多冗余的代码,而使用jQuery只需要一行代码就足够了。例如,找到所有应用了.content class样式的div中所有的P标签,只需要下面的一行代码:
$('div.content').find('p');
2.动态修改页面样式
  使用jQuery我们可以动态的修改页面的CSS即使在页面呈现以后。jQuery仍然能够改变文档中某个部分的类或者个别的样式属性。例如,找到页面所有的ul标签的第一个li子标签,然后为它们增加名为active的样式,代码如下:
$('ul > li:first').addClass('active');
3.动态改变DOM内容
  使用jQuery我们可以很容易地对页面DOM进行修改,例如,为ID为"Container"的元素添加一个链接:
$('#container').append('more');
4.响应用户的交互操作
  jQuery提供了截获形形色色的页面事件(比如用户单击某个链接)的适当方式,而不需要使用事件处理程序拆散HTML代码。此外,它的事件处理API也消除了经常困扰Web开发人员浏览器的不一致性。

$('button.show-details').click(function() {
   $('div.details').show();3 });

上面的代码表示:为使用的.show-details样式的button元素添加一个click事件,事件就是:显示使用.details样式的DIV。
5.为页面添加动态效果
  jQuery中内置的一批淡入、擦除之类的效果,以及制作新效果的工具包,为此提供了便利。

$(function () {
   $("#btnShow").click(function () {
     $("#msubject").hide("slow");
     });
 });

6.统一Ajax操作
  jQuery统一了多种浏览器的Ajax操作,使得开发人员更多的专注服务器端开发。

 function (data, type) {
 // 对Ajax返回的原始数据进行预处理
 return data
 // 返回处理后的数据
 }

7.简化常见的JavaScript任务。
  除了这些完全针对文档的特性之外,jQuery也改进了对基本的JavaScript数据结构(例如迭代和数组操作等)。

  total += value;
});```
#####3.jquery 对象和 DOM 原生对象有什么区别?如何转化?
jquery 对象是将原生DOM对象经过包装后的对象,可以使用jQuery专属方法,是一个数组对象
jQuery可使用数组方法转原生:`jQuery[i]`
原生转jQuery:`$(原生)`
#####4.jquery中如何绑定事件?bind、unbind、delegate、live、on、off都有什么作用?推荐使用哪种?使用on绑定事件使用事件代理的写法?

$(".click").click(function(){
console.log( $(this) );
})
$(".click").bind("click",function(){
console.log(this);
})
$(".click").on(“click”,function(e){
console.log(e.target)
})
$(".click").parents("ct").on(“click”,".click",function(e){
console.log(e.target)
}) //事件代理

\*bind 为元素添加一个绑定事件
\*unbind 解除一个元素绑定事件 
\*delegate 相当于事件代理(可指定元素)为元素添加一个或多个绑定事件
\*live 相当于使用了事件代理(对于根节点),为元素添加一个或多个绑定事件
\*on 在被选元素及子元素上添加一个或多个事件处理程序 (最建议使用的方法)
\*off 是用来移除.on()方法添加的事件处理程序
#####5.jquery 如何展示/隐藏元素?

$(".show").show([duration ] [,easing ] [,complete ])
//duration:动画持续多久
//easing:表示过渡使用哪种缓动函数,jQuery自身提供"linear" 和 "swing"
//complete:在动画完成时执行的函数
$(".hide").hide([duration ] [,easing ] [,complete ])

$(".switch").toggle( [duration ] [,easing ] [,complete ] )
//用来切换元素的隐藏、显示,类似于toggleClass,用法和show、hide类似

$(".move").fadeIn( [duration ] [, easing ] [, complete ] )
//淡入
$(".move").fadeOut( [duration ] [, easing ] [, complete ] )
//淡出

$("xxx").fadeTo( duration, opacity [, easing ] [, complete ] )
//调整匹配元素的透明度,方法通过匹配元素的不透明度做动画效果
$("xxx").fadeToggle( [duration ] [, easing ] [, complete ] )
//通过匹配的元素的不透明度动画,来显示或隐藏它们,方法执行匹配元素的不透明度动画。当被可见元素调用时,元素不透明度一旦达到0,display样式属性设置为none ,所以元素不再影响页面的布局。

$("xxx").slideDown( [duration ] [, easing ] [, complete ] )
//用滑动动画显示一个匹配元素,方法将给匹配元素的高度的动画,这会导致页面的下面部分滑下去,弥补了显示的方式
$("xxx").slideUp( [duration ] [, easing ] [, complete ] )
//用滑动动画隐藏一个匹配元素,方法将给匹配元素的高度的动画,这会导致页面的下面部分滑上去,当一个隐藏动画后,高度值达到0的时候,display 样式属性被设置为none,以确保该元素不再影响页面布局。 display 样式属性将被设置为none,以确保该元素不再影响页面布局。
$("xxx").slideToggle( [duration ] [, easing ] [, complete ] )
//用滑动动画显示或隐藏一个匹配元素,方法将给匹配元素的高度的动画,这会导致页面中,在这个元素下面的内容往下或往上滑。display属性值保存在jQuery的数据缓存中,所以display可以方便以后可以恢复到其初始值。
如果一个元素的display属性值为inline,然后是隐藏和显示,这个元素将再次显示inline。当一个隐藏动画后,高度值达到0的时候,display 样式属性被设置为none,以确保该元素不再影响页面布局。

#####6.jquery 动画如何使用?

$("xxx").animate( properties [, duration ] [, easing ] [, complete ] )
//properties是一个CSS属性和值的对象,动画将根据这组对象移动。

例如:

$('#clickme').click(function() {
$('#book').animate({
opacity: 0.25,
left: '+=50',
height: 'toggle'
}, 5000, function() {
// Animation complete.
});
});

停止:

$("xxx").stop( [clearQueue ] [, jumpToEnd ] )

如:

$('#hoverme-stop-2').hover(function() {
$(this).find('img').stop(true, true).fadeOut();
}, function() {
$(this).find('img').stop(true, true).fadeIn();
});

#####7.如何设置和获取元素内部 HTML 内容?如何设置和获取元素内部文本?
获取元素内部HTML:`$("xxx").html()`
获取元素内部内部文本:`$("xxx").text()`
上述括号内无内容代表获取,有内容代表设置。
#####8.如何设置和获取表单用户输入或者选择的内容?如何设置和获取元素属性?
设置或者获取表单用户输入内容`$('#input').val()`
设置或者获取表单选择内容`$('input:checked')或$(':checked')`
设置或者获取元素属性`$("div").attr(e,d)`
e代表获取,d代表需要设置的属性,为空时代表获取
获取带有某个属性的元素`$('[data-img]')`或者`$('[data-img="xxx“]')`
###代码
[预览1](http://book.jirengu.com/jirengu-inc/jrg-renwu3/homework/%E8%81%82%E6%94%BF/25/task25-1/task25-1.html)
[预览2](http://book.jirengu.com/jirengu-inc/jrg-renwu3/homework/%E8%81%82%E6%94%BF/25/task25-2/task25-2.html)
[预览3](http://book.jirengu.com/jirengu-inc/jrg-renwu3/homework/%E8%81%82%E6%94%BF/25/task25-3/task25-3.html)
#####1. 使用 jquery实现如下效果
![](http://upload-images.jianshu.io/upload_images/2304286-1b01c2831a105992.gif?imageMogr2/auto-orient/strip)
[github](https://github.com/jirengu-inc/jrg-renwu3/blob/master/homework/%E8%81%82%E6%94%BF/25/task25-1/task25-1.html)
代码:





task25-1







#####2. 使用 jquery 实现如下效果
![](http://upload-images.jianshu.io/upload_images/2304286-a41dddb87b877e71.gif?imageMogr2/auto-orient/strip)
[github](https://github.com/jirengu-inc/jrg-renwu3/blob/master/homework/%E8%81%82%E6%94%BF/25/task25-2/task25-2.html)
代码:





task25-2










    • jQuery入门_第1张图片

      藏美千足金和田玉金镶玉路路通吊坠


      ¥1699.00





    • jQuery入门_第2张图片

      藏美千足金和田玉金镶玉路路通吊坠


      ¥1699.00





    • jQuery入门_第3张图片

      藏美千足金和田玉金镶玉路路通吊坠


      ¥2349.00





    • jQuery入门_第4张图片

      藏美千足金和田玉金镶玉路路通吊坠


      ¥699.00





    • jQuery入门_第5张图片

      藏美千足金和田玉金镶玉路路通吊坠


      ¥18999.00





    • jQuery入门_第6张图片

      藏美千足金和田玉金镶玉路路通吊坠


      ¥169900.00









    • jQuery入门_第7张图片

      藏美千足金和田玉金镶玉路路通吊坠


      ¥1699.00





    • jQuery入门_第8张图片

      藏美千足金和田玉金镶玉路路通吊坠


      ¥1699.00





    • jQuery入门_第9张图片

      藏美千足金和田玉金镶玉路路通吊坠


      ¥2699.00





    • jQuery入门_第10张图片

      藏美千足金和田玉金镶玉路路通吊坠


      ¥699.00





    • jQuery入门_第11张图片

      藏美千足金和田玉金镶玉路路通吊坠


      ¥18999.00





    • jQuery入门_第12张图片

      藏美千足金和田玉金镶玉路路通吊坠


      ¥169900.00









    • jQuery入门_第13张图片

      藏美千足金和田玉金镶玉路路通吊坠


      ¥1699.00





    • jQuery入门_第14张图片

      藏美千足金和田玉金镶玉路路通吊坠


      ¥1659.00





    • jQuery入门_第15张图片

      藏美千足金和田玉金镶玉路路通吊坠


      ¥2699.00





    • jQuery入门_第16张图片

      藏美千足金和田玉金镶玉路路通吊坠


      ¥69559.00





    • jQuery入门_第17张图片

      藏美千足金和田玉金镶玉路路通吊坠


      ¥999.00





    • jQuery入门_第18张图片

      藏美千足金和田玉金镶玉路路通吊坠


      ¥16553230.00














    • jQuery入门_第19张图片

      藏美千足金和田玉金镶玉路路通吊坠


      ¥1699.00





    • jQuery入门_第20张图片

      藏美千足金和田玉金镶玉路路通吊坠


      ¥1699.00





    • jQuery入门_第21张图片

      藏美千足金和田玉金镶玉路路通吊坠


      ¥2349.00





    • jQuery入门_第22张图片

      藏美千足金和田玉金镶玉路路通吊坠


      ¥699.00





    • jQuery入门_第23张图片

      藏美千足金和田玉金镶玉路路通吊坠


      ¥18999.00





    • jQuery入门_第24张图片

      藏美千足金和田玉金镶玉路路通吊坠


      ¥169900.00









    • jQuery入门_第25张图片

      藏美千足金和田玉金镶玉路路通吊坠


      ¥1699.00





    • jQuery入门_第26张图片

      藏美千足金和田玉金镶玉路路通吊坠


      ¥1699.00





    • jQuery入门_第27张图片

      藏美千足金和田玉金镶玉路路通吊坠


      ¥2699.00





    • jQuery入门_第28张图片

      藏美千足金和田玉金镶玉路路通吊坠


      ¥699.00





    • jQuery入门_第29张图片

      藏美千足金和田玉金镶玉路路通吊坠


      ¥18999.00





    • jQuery入门_第30张图片

      藏美千足金和田玉金镶玉路路通吊坠


      ¥169900.00









    • jQuery入门_第31张图片

      藏美千足金和田玉金镶玉路路通吊坠


      ¥1699.00





    • jQuery入门_第32张图片

      藏美千足金和田玉金镶玉路路通吊坠


      ¥1659.00





    • jQuery入门_第33张图片

      藏美千足金和田玉金镶玉路路通吊坠


      ¥2699.00





    • jQuery入门_第34张图片

      藏美千足金和田玉金镶玉路路通吊坠


      ¥69559.00





    • jQuery入门_第35张图片

      藏美千足金和田玉金镶玉路路通吊坠


      ¥999.00





    • jQuery入门_第36张图片

      藏美千足金和田玉金镶玉路路通吊坠


      ¥16553230.00











#####3. 实现如下效果
![](http://upload-images.jianshu.io/upload_images/2304286-37fd046198f7ad20.gif?imageMogr2/auto-orient/strip)
[github](https://github.com/jirengu-inc/jrg-renwu3/blob/master/homework/%E8%81%82%E6%94%BF/25/task25-3/task25-3.html)
代码:





task25-3









    • jQuery入门_第37张图片

      藏美千足金和田玉金镶玉路路通吊坠


      ¥1699.00





    • jQuery入门_第38张图片

      藏美千足金和田玉金镶玉路路通吊坠


      ¥1699.00





    • jQuery入门_第39张图片

      藏美千足金和田玉金镶玉路路通吊坠


      ¥2349.00





    • jQuery入门_第40张图片

      藏美千足金和田玉金镶玉路路通吊坠


      ¥699.00





    • jQuery入门_第41张图片

      藏美千足金和田玉金镶玉路路通吊坠


      ¥18999.00





    • jQuery入门_第42张图片

      藏美千足金和田玉金镶玉路路通吊坠


      ¥169900.00












本文版权归本人(帘外修竹)所有,转载须说明来源

你可能感兴趣的:(jQuery入门)