canvas实现图片根据滑块放大缩小效果

 更新时间:2017年02月24日 11:44:34   作者:z5895451  
本文主要介绍了canvas实现图片根据滑块放大缩小效果的实例,具有很好的参考价值,下面跟着小编一起来看下吧

效果图:

图(1) 原始图

图(2) 缩小后

图(3) 放大后

代码如下:

<!DOCTYPE html>
<html>
 <head>
 <meta charset="utf-8" />
 <title></title>
 <style type="text/css">
  #canvas1{
  box-shadow: 3px 3px 10px black;
  }
 </style>
 </head>
 <body>
 <canvas id="canvas1" width="500" height="500"></canvas>
 <input type="range" name="slider" id="silder" value="0.5" max="1" min="0" step="0.01"/>
 </body>
 <script type="text/javascript">
 var canvas = document.getElementById("canvas1");
 var context = canvas.getContext("2d");
 var slider = document.getElementById("silder");
 var scale = slider.value;
 creatImg(scale);
  slider.onmousedown = function() {
  slider.onmousemove = function () {
   scale = slider.value;
   creatImg(scale);
  }
  }
 function creatImg (scale) {
 var myImg = new Image();
 myImg.src = "https://gss0.baidu.com/-vo3dSag_xI4khGko9WTAnF6hhy/zhidao/pic/item/902397dda144ad34ac75c376d7a20cf430ad857d.jpg"
 var imgh = canvas.height * scale;
 var imgw = canvas.width * scale;
 var x = canvas.width / 2 - imgw / 2;
 var y = canvas.height / 2 - imgh / 2
 myImg.onload = function () {
 context.clearRect(0 , 0 , canvas.width , canvas.height);
 context.drawImage(myImg , x , y ,imgw , imgh)
 }
 }
 </script>
</html>

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持脚本之家!

相关文章

  • ES6中异步对象Promise用法详解

    ES6中异步对象Promise用法详解

    这篇文章主要介绍了ES6中异步对象Promise用法,对比ES5分析了ES6异步方法Promise的使用技巧,并结合实例形式分析了连续使用Promise对象、Promise捕获错误的catch()、以及Promise的高级用法,需要的朋友可以参考下
    2019-07-07
  • JavaScript数组_动力节点Java学院整理

    JavaScript数组_动力节点Java学院整理

    这篇文章主要介绍了JavaScript数组的相关知识,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2017-06-06
  • 小程序实现带年月选取效果的日历

    小程序实现带年月选取效果的日历

    这篇文章主要为大家详细介绍了小程序实现带年月选取效果的日历,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-06-06
  • javascript编写贪吃蛇游戏

    javascript编写贪吃蛇游戏

    这篇文章主要介绍了javascript编写贪吃蛇游戏的代码,非常简单,也很好玩,有需要的童鞋们可以参考下。
    2015-07-07
  • JavaScript函数中this指向问题详解

    JavaScript函数中this指向问题详解

    这篇文章主要给大家介绍了关于JavaScript函数中this指向问题的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-05-05
  • JS实现判断对象是否为空对象的5种方法

    JS实现判断对象是否为空对象的5种方法

    这篇文章主要介绍了JS实现判断对象是否为空对象的5种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-04-04
  • bootstrap switch开关组件使用方法详解

    bootstrap switch开关组件使用方法详解

    这篇文章主要为大家详细介绍了bootstrap switch开关组件的使用方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-08-08
  • js获取ip和地区

    js获取ip和地区

    本文主要介绍了js获取ip和地区的方法,具有很好的参考价值。下面跟着小编一起来看下吧
    2017-03-03
  • 基于BootStrap Metronic开发框架经验小结【二】列表分页处理和插件JSTree的使用

    基于BootStrap Metronic开发框架经验小结【二】列表分页处理和插件JSTree的使用

    本文给大家介绍基于BootStrap Metronic开发框架经验小结【二】列表分页处理和插件JSTree的使用,介绍页面内容常用到的数据分页处理,以及Bootstrap插件JSTree的使用,非常具有参考借鉴价值,感兴趣的朋友一起学习吧
    2016-05-05
  • 微信小程序将页面按钮悬浮固定在底部的实现代码

    微信小程序将页面按钮悬浮固定在底部的实现代码

    这篇文章主要介绍了微信小程序将页面按钮悬浮固定在底部的实现代码,代码简单易懂,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-10-10

最新评论