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


Posted in Javascript onFebruary 24, 2017

效果图:

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

图(1) 原始图

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

图(2) 缩小后

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

图(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>

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

Javascript 相关文章推荐
javascript基础的动画教程,直观易懂
Jan 10 Javascript
js模拟点击以提交表单为例兼容主流浏览器
Nov 29 Javascript
JavaScript函数详解
Nov 17 Javascript
Jquery实现仿腾讯微博发表广播
Nov 17 Javascript
js实现input框文字动态变换显示效果
Aug 19 Javascript
jquery+php随机生成红包金额数量代码分享
Aug 27 Javascript
JavaScript 定时器 SetTimeout之定时刷新窗口和关闭窗口(代码超简单)
Feb 26 Javascript
关于JavaScript数组你所不知道的3件事
Aug 24 Javascript
浅析vue-router jquery和params传参(接收参数)$router $route的区别
Aug 03 jQuery
关于ckeditor在bootstrap中modal中弹框无法输入的解决方法
Sep 11 Javascript
Vue 电商后台管理项目阶段性总结(推荐)
Aug 22 Javascript
layui使用及简单的三级联动实现教程
Dec 01 Javascript
详解JS中的立即执行函数
Feb 24 #Javascript
几行js代码实现自适应
Feb 24 #Javascript
javascript 删除数组元素和清空数组的简单方法
Feb 24 #Javascript
JavaScript基本类型值-Number类型
Feb 24 #Javascript
AngularJS Toaster使用详解
Feb 24 #Javascript
js获取隐藏元素的宽高
Feb 24 #Javascript
js css自定义分页效果
Feb 24 #Javascript
You might like
使用php 获取时间今天明天昨天时间戳的详解
2013/06/20 PHP
windwos下使用php连接oracle数据库的过程分享
2014/05/26 PHP
php中call_user_func函数使用注意事项
2014/11/21 PHP
php5.3不能连接mssql数据库的解决方法
2014/12/27 PHP
php实现的xml操作类
2016/01/15 PHP
PHP读书笔记_运算符详解
2016/07/01 PHP
alixixi runcode.asp的代码不错的应用
2007/08/08 Javascript
学习面向对象之面向对象的基本概念:对象和其他基本要素
2010/11/30 Javascript
轻松创建nodejs服务器(4):路由
2014/12/18 NodeJs
jQuery源码分析之Callbacks详解
2015/03/13 Javascript
JS使用ajax从xml文件动态获取数据显示的方法
2015/03/24 Javascript
jQuery中cookie插件用法实例分析
2015/12/04 Javascript
JS组件Form表单验证神器BootstrapValidator
2016/01/26 Javascript
让你一句话理解闭包(简单易懂)
2016/06/03 Javascript
Bootstrap Table的使用总结
2016/10/08 Javascript
微信小程序 request接口的封装实例代码
2017/04/26 Javascript
js canvas实现放大镜查看图片功能
2017/06/08 Javascript
原生js封装运动框架的示例讲解
2017/10/01 Javascript
Vue常用指令详解分析
2018/08/19 Javascript
微信小程序实现联动选择器
2019/02/15 Javascript
vue全局使用axios的操作
2020/09/08 Javascript
Python logging模块学习笔记
2014/05/24 Python
跟老齐学Python之传说中的函数编写条规
2014/10/11 Python
用Python的Django框架完成视频处理任务的教程
2015/04/02 Python
wxPython的安装图文教程(Windows)
2017/12/28 Python
对python过滤器和lambda函数的用法详解
2019/01/21 Python
python实现批量修改服务器密码的方法
2019/08/13 Python
python如何获取apk的packagename和activity
2020/01/10 Python
数据库设计的包括哪两种,请分别进行说明
2016/07/15 面试题
挑战杯创业计划书的写作指南
2014/01/07 职场文书
我的梦想演讲稿1000字
2014/08/21 职场文书
党性分析自查总结
2014/10/14 职场文书
《改造我们的学习》心得体会
2014/11/07 职场文书
优秀小学生事迹材料
2014/12/26 职场文书
西安大雁塔导游词
2015/02/10 职场文书
教师党员自我评价范文
2015/03/04 职场文书