为了账号安全,请及时绑定邮箱和手机立即绑定

jQuery动画与ajax

标签:
JQuery

1.jQuery 中, $(document).ready()是什么意思?

$(document).ready()方法:为防止文档在完全加载(就绪)之前运行Jquery代码。若在文档未完全加载前就运行函数,操作可能失败。必须在文档加载完后执行操作,可使用ready事件,作用相当于把js写到body末尾。

    $(document).ready(function(){
    });
    可简写为:
    $(function(){
    })

window.:必须等网页中所有的元素全部加载完毕,才能执行
不能同时写多个,否则后面覆盖前面。

2.$node.html()和$node.text()的区别?

  • $node.html() 获取$node里的html标签和文本信息

  • $node.text() 获取$node里的文本信息,不包含html标签

3.$.extend 的作用和用法?

  • $.extend()将多个对象合并到一起,可以传入多个参数。$.extend([deep,] target,…),[deep,]为布尔值默认情况不是深拷贝,可设置true为深拷贝。

4. jQuery 的链式调用是什么?

  • jQuery返回对象还是当前对象(return this)时,可以使用类似链子一样的方式进行jQuery方法的调用,如:
    $(#ct).css('color','blue').show(400).hide();

5.jQuery 中 data 函数的作用

  • 在匹配元素上存储任意相关数据 或 返回匹配的元素集合中的第一个元素的给定名称的数据存储的值。

    .data( key, value )
    **key**
    类型: [String](http://www.jquery123.com/Types/#String)一个字符串,用户存储数据的名称。(译者注:存储的数据名)
    
    **value**
    类型: [Object](http://www.jquery123.com/Types/#Object)新的数据值;它可以是任意的Javascript数据类型,包括Array 或者 Object。
    
    添加的版本: [1.4.3](http://www.jquery123.com/category/version/1.4.3/).data( obj )**obj**
    类型: [Object](http://www.jquery123.com/Types/#Object)一个用于更新数据的 键/值对
    
    $("body").data("foo", 52);
    $("body").data("bar", { myType: "test", count: 40 });
    $("body").data({ baz: [ 1, 2, 3 ] });
    
    $("body").data("foo"); // 52$("body").data(); // { foo: 52, bar: { myType: "test", count: 40 }, baz: [ 1, 2, 3 ] }

6.写出以下功能对应的 jQuery 方法:

  • 给元素 $node 添加 class active,给元素 $noed 删除 class active

    $node.attr('class','active')$node.removeAttr('class')
  • 展示元素$node, 隐藏元素$node

    $box.show()$box.hide()
  • 获取元素$node 的 属性: id、src、title, 修改以上属性

  • 获取:

     $img.attr('src') $img.attr('id') $img.attr('title')
  • 修改:

     $img.attr('src','http://t10.baidu.com/it/u=1469844558,3932374131&fm=58')
     .attr('id','img_1')
     .attr('title','内链')
  • 给$node 添加自定义属性data-src

     $node.data('src','http://t10.baidu.com/it/u=1469844558,3932374131&fm=58')
  • 在$ct 内部最开头添加元素$node

     $ct.prepend($node)
  • 在$ct 内部最末尾添加元素$node

     $ct.append($node)
  • 删除$node

     $node.remove()
  • 把$ct里内容清空

     $ct.empty()
  • 在$ct 里设置 html <div class="btn"></div>
    $ct.html('<div class="btn"></div>')

    $ct.append('<div class="btn"></div>')

  • 获取、设置$node 的宽度、高度(分别不包括内边距、包括内边距、包括边框、包括外边距)

  • 获取

       $box.width() //只有内容宽度
       $box.innerWidth() //包括内边距
       $box.outerWidth() //包括内边距、外边框
       $box.outerWidth(true) //包括内边距、外边框、外边距
       $box.height() //只有内容高度
       $box.innerHeight() //包括内边距
       $box.outerHeight() //包括内边距、外边框
       $box.outerHeight(true) //包括内边距、外边框、外边距
  • 设置

       $box.css({'width': '200px', 'height': '200px','border-color': 'green','margin':'20px','padding':'20px;'})
  • 获取窗口滚动条垂直滚动距离

         $(window).scroll()
  • 获取$node 到根节点水平、垂直偏移距离

         $node.offset()
  • 修改$node 的样式,字体颜色设置红色,字体大小设置14px

         $node.css({"color":"red","font-size":"14px"})
  • 遍历节点,把每个节点里面的文本内容重复一遍

      $node.each(function(){      console.log($(this).text())
      })
  • 从$ct 里查找 class 为 .item的子元素

     $ct.find('.item')
  • 获取$ct 里面的所有孩子

     $ct.children()
  • 对于$node,向上找到 class 为’.ct’的父亲,在从该父亲找到’.panel’的孩子

     $node.parents('.ct').find('.panel')
  • 获取选择元素的数量

     $node.length $node.size()
  • 获取当前元素在兄弟中的排行

     $node.index()

7.用jQuery实现以下操作

  1. 当点击$btn 时,让 $btn 的背景色变为红色再变为蓝色

  2. 当窗口滚动时,获取垂直滚动距离

  3. 当鼠标放置到$div上,把$div 背景色改为红色,移出鼠标背景色变为白色

  4. 当鼠标激活 input 输入框时让输入框边框变为蓝色,当输入框内容改变时把输入框里的文字小写变为大写,当输入框失去焦点时去掉边框蓝色,控制台展示输入框里的文字

  5. 当选择 select 后,获取用户选择的内容
    代码及效果展示

8.用 jQuery ajax 实现如下效果。`当点击加载更多会加载数据展示到页面效果预览

9. 实现一个天气预报页面,前端展示自由发挥,数据接口: http://api.jirengu.com/weather.php (选做题目)



作者:饥人谷_米弥轮
链接:https://www.jianshu.com/p/31fbaaacf0c9


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消