中国软件杯打卡——图片放大与缩小功能

实现图片放大与缩小功能代码如下:

```html

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>鼠标滚轮控制图片大小</title>
</head>
<body>
 
  <img src="../static/images/girl.jpg" alt="" id="img1">

  <script src="../static/js/jquery-3.6.0.min.js"></script>

  <script>
    var img1 = $('#img1')
    console.log(img1);

    // 浏览器相关信息
    var str = navigator.userAgent;
    console.log(str);
    // 如果当前浏览器为 火狐浏览器
    if(str.indexOf("Firefox") != -1) {
      document.addEventListener("DOMMouseScroll", function() {
        if (event.detail > 0) {
          // 向下滚动,图片缩小
          // console.log("向下滚动")
          smaller()
        } else {
          // 向上滚动,图片放大
          // console.log("向上滚动")
          bigger()
        }
      })
    } else {
      // 其它的浏览器
      document.addEventListener("mousewheel", function() {
        var event = event || window.event
        if(event.wheelDelta < 0) {
          // 向下滚动
          // console.log("向下滚动")
          smaller()
        } else {
          // 向上滚动
          // console.log("向上滚动")
          bigger()
        }
      })

    }

    // --------------------- 自定义函数 ---------------------
    // 图片放大
    function bigger() {
      // 图片现在的宽度和高度
      var w = img1.width()
      var h = img1.height()

      w += 10
      h += 10

      // 对图片的宽度和高度赋值
      img1.width(w)
      img1.height(h)

    }

    function smaller() {
      // 图片现在的宽度和高度
      var w = img1.width()
      var h = img1.height()

      w -= 10
      h -= 10

      // 对图片的宽度和高度赋值
      img1.width(w)
      img1.height(h)
    }
  </script>
</body>
</html>

```

火狐浏览器与其它浏览器对鼠标滚轮事件的方法名不同,所以需要进行区分。

posted @ 2022-04-20 22:12  Gazikel  阅读(23)  评论(0编辑  收藏  举报