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 相关文章推荐
AJAX使用了UpdatePanel后无法使用alert弹出脚本
Apr 02 Javascript
jQuery 名称冲突的解决方法
Apr 08 Javascript
jquery选择符快速提取web表单数据示例
Mar 27 Javascript
Javascript中对象继承的实现小例
May 12 Javascript
Jquery使用css方法改变样式实例
May 18 Javascript
js全选按钮的实现方法
Nov 17 Javascript
JavaScript中的 attribute 和 jQuery中的 attr 方法浅析
Jan 04 Javascript
基于vue2实现左滑删除功能
Nov 28 Javascript
在Vue项目中用fullcalendar制作日程表的示例代码
Aug 04 Javascript
js实现时钟定时器
Mar 26 Javascript
微信小程序自定义navigationBar顶部导航栏适配所有机型(附完整案例)
Apr 26 Javascript
vue中watch和computed的区别与使用方法
Aug 23 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批量删除数据库下指定前缀的表以prefix_为例
2014/08/24 PHP
php将图片文件转换成二进制输出的方法
2015/06/10 PHP
使用Rancher在K8S上部署高性能PHP应用程序的教程
2020/07/10 PHP
IE7中javascript操作CheckBox的checked=true不打勾的解决方法
2009/12/07 Javascript
基于jQuery创建鼠标悬停效果的方法
2015/03/07 Javascript
JavaScript性能优化之函数节流(throttle)与函数去抖(debounce)
2016/08/11 Javascript
将form表单通过ajax实现无刷新提交的简单实例
2016/10/12 Javascript
angularJs关于指令的一些冷门属性详解
2016/10/24 Javascript
微信小程序 特效菜单抽屉效果实例代码
2017/01/11 Javascript
jQuery实现拖拽可编辑模块功能代码
2017/01/12 Javascript
详解Vue微信授权登录前后端分离较为优雅的解决方案
2018/06/29 Javascript
一个Vue视频媒体多段裁剪组件的实现示例
2018/08/09 Javascript
Vue.js实现双向数据绑定方法(表单自动赋值、表单自动取值)
2018/08/27 Javascript
vue发送ajax请求详解
2018/10/09 Javascript
js实现图片放大并跟随鼠标移动特效
2019/01/18 Javascript
如何使用jQuery操作Cookies方法解析
2020/09/08 jQuery
[02:39]DOTA2国际邀请赛助威团西雅图第一天
2013/08/08 DOTA
Python爬取京东的商品分类与链接
2016/08/26 Python
Python 实现数据库(SQL)更新脚本的生成方法
2017/07/09 Python
python使用BeautifulSoup与正则表达式爬取时光网不同地区top100电影并对比
2019/04/15 Python
pandas-resample按时间聚合实例
2019/12/27 Python
Jupyter Notebook远程登录及密码设置操作
2020/04/10 Python
Python colormap库的安装和使用详情
2020/10/06 Python
基于python+selenium自动健康打卡的实现代码
2021/01/13 Python
HTML5实现表单自动验证功能实例代码
2017/01/11 HTML / CSS
html5指南-5.使用web storage存储键值对的数据
2013/01/07 HTML / CSS
利用HTML5画出一个坦克的形状具体实现代码
2013/06/20 HTML / CSS
Html5+JS实现手机摇一摇功能
2015/04/24 HTML / CSS
IRO美国官网:法国服装品牌
2018/03/06 全球购物
车间统计员岗位职责
2014/01/05 职场文书
新闻编辑求职信
2014/04/09 职场文书
租房协议书
2014/04/10 职场文书
2014年化工厂工作总结
2014/11/25 职场文书
监理中标通知书
2015/04/16 职场文书
卫生保健工作总结2015
2015/05/18 职场文书
《这片土地是神圣的》教学反思
2016/02/16 职场文书