17 Jquery的使用(3)

142 阅读1分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

一、JQ事件

1.单击事件:click
2.双击事件:dblclick
3.划入事件:mouseenter
4.划出事件:mouseleave
5.划入划出事件:hover
6.绑定事件:on
7.绑定事件:以键值对的形式进行绑定
8.删除绑定事件:off

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
  <style>
    div{
      width: 100px;
      height: 100px;
      background-color: black;
    }
  </style>
</head>
<body>
<div></div>
<button>按钮</button>
<script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.5.0/jquery.js"></script>
<script>
  // 1.JQ单击事件
  // JS里单击事件是onclick = func(){}
  // JQ里面单击事件是click()
  // $("button").click(function () {
  //     console.log(1);
  // })

  // 2.JQ双击事件
  // JS里面是ondblclick
  // JQ里面是dblclick JQ里面去掉前面的on就行
  // $("button").dblclick(function () {
  //     console.log(2);
  // })

  // 3.JQ划入事件
  // $("div").mouseenter(function(){
  //     console.log(11);
  // })

  // 4.JQ划出事件
  // $("div").mouseleave(function(){
  //     console.log(22);
  // })

  // 5.hover:既有划入事件功能,又有划出事件功能
  // $("div").hover(function () {
  //     console.log("划入事件");
  // },function(){
  //     console.log("划出事件");
  // })

  // 6.绑定事件 on
  // 点击改变背景颜色
  $("div").on("click",function(){
      $(this).css("background","red")
  })

  // 7.绑定多个事件:以键值对的方式
  $("div").on({
      "mouseenter":function () {
          $(this).css("background","skyblue")
      },
      "mouseleave":function () {
          $(this).css("background","yellow")

      }

  })

  // 8.删除绑定事件 off() 不传参 删除全部事件
  // $("button").click(function () {
  //     $("div").off()
  // })
  // 删除指定事件 off()传参 删除固定的事件
  $("button").click(function () {
      $("div").off("click")
  })

</script>

</body>
</html>

二、JQ动画

1.淡出
1)hide:向左上角隐藏
2)slideUp:向上隐藏

2.淡入
1)show:右下角显示
2)slideDown:向下显示

3.淡入淡出
1)slideToggle:向上向下淡入淡出
2)toggle:向左上向右下淡入淡出

4.渐出:fadeOut

5.渐入:fadeIn

6.渐入渐出:fadeToggle

7.JQ动画:添加动画事件

8.停止动画:stop

9.延迟动画固定时间后,继续执行动画效果:delay

具体使用方法如下所示:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
   <style>
     *{
       margin: 0;
       padding: 0;
     }
    div{
      width: 100px;
      height: 100px;
      background-color: red;
      position: relative;
    }
  </style>
</head>
<body>
<button>淡入</button>
<button>淡出</button>
<button>淡入/淡出</button>
<button>渐入</button>
<button>渐出</button>
<button>渐入/渐出</button>
<button>动画</button>
<button>停止动画</button>
<button>延迟执行</button>
<div></div>
<script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.5.0/jquery.js"></script>

<script>
  // JQ动画
  // 1.JQ淡出(隐藏)
  $("button").eq(0).click(function () {
      // $("div").hide(2000) //2000:2秒内隐藏向左上角隐藏
      $("div").slideUp(2000) //2000:2秒内隐藏向上隐藏

  })

  // 2.JQ淡入(显示)
   $("button").eq(1).click(function () {
      // $("div").show(2000) //2000:2秒内隐藏向右下角显示
      $("div").slideDown(2000) //2000:2秒内隐藏向下显示

  })

  // 3.JQ淡入淡出
   $("button").eq(2).click(function () {
      // $("div").slideToggle(2000) //向上向下淡入淡出
      $("div").toggle(2000) //向左上向右下淡入淡出
  })

  // 4.JQ渐出
    $("button").eq(3).click(function () {
      $("div").fadeOut(2000)
  })

  // 5.JQ渐入
   $("button").eq(4).click(function () {
      $("div").fadeIn(2000)
  })

  // 6.JQ渐入渐出
   $("button").eq(5).click(function () {
      $("div").fadeToggle(2000)
  })

  // 7.JQ动画
   $("button").eq(6).click(function () {
       // 点击动画按钮,盒子变大
      $("div").animate({
          // 以键值对的形式传递操作,后面可以输入时间
          // 颜色无法生效,只能改变宽高
          // "width":"300px",
          // "height":"300px",
          // "height":"300px" //颜色不生效
          "top":"100px", //要给父级盒子加上相对行为后才能生效,应为默认是静态定位
          "left":"100px",

      },2000)
  })

  // 8.停止动画
    $("button").eq(7).click(function () {
      $("div").stop()
  })

  // 9.延迟动画固定时间后,继续执行动画效果
    $("button").eq(8).click(function () {
      $("div").delay(5000).animate({
          "top":"50px", //要给父级盒子加上相对行为后才能生效,应为默认是静态定位
          "left":"50px",
      },2000)

  })

</script>

</body>
</html>