JS简单的图片放大缩小的两种方法


Posted in Javascript onNovember 11, 2013

以左上角为定点,放大缩小,该点位置不变。

方法一:

Html代码

   <script type="text/javascript"> 
        //兼容IE和火狐   缩小放大、缩放 
        function ImageSuofang(args) { 
            var oImg = document.getElementById("oImg"); 
            if (args) { 
                oImgoImg.width = oImg.width * 1.1; 
                oImgoImg.height = oImg.height * 1.1; 
            } 
            else { 
                oImgoImg.width = oImg.width / 1.1; 
                oImgoImg.height = oImg.height / 1.1; 
            } 
        }     
     </script> <form id="form1"> 
     <div class="pancontainer" data-orient="center" style="width:320px; height:480px;margin: 5px 300px 0px 400px;border: 1px solid #000;"> 
<img id="oImg" src="/img/c.jpg" alt="pic"/> 
</div> 
             <input id="btn1" type="button" value="放大" onclick="ImageSuofang(true)" /> 
        <input id="btn2" type="button" value="缩小" onclick="ImageSuofang(false)" /> 
         <!--            <input type="button" value="<-Rotate逆时针" name="RotateL" id="RotateL" onclick="rotateRight('oImg',90);">  --> 
             
</form>

方法二:

CSS编码如下:

Css代码

#biankuang{height:480px;width:320px;margin: 30px auto;}//加一个border可以看到定点为左上角。

下面是实现图片缩小放大功能的JS代码:

Js代码

var zoomLevel = 0; 
var currentWidth = 0; 
var currentHeight = 0; 
var originalWidth = 0; 
var originalHeight = 0; 
function initial(){ 
    currentWidth = document.myImage.width; 
    currentHeight = document.myImage.height; 
    originalWidth = currentWidth; 
    originalHeight = currentHeight; 
    update(); 
} 
function zoomIn(){ 
    document.myImage.width = currentWidth*1.2; 
    document.myImage.height = currentHeight*1.2; 
    zoomLevel = zoomLevel + 1; 
    update(); 
} 
function zoomOut(){ 
    document.myImage.width = currentWidth/1.2; 
    document.myImage.height = currentHeight/1.2; 
    zoomLevel = zoomLevel - 1; 
    update(); 
} 
function resetImage(){ 
    document.myImage.width = originalWidth; 
    document.myImage.height = originalHeight; 
    zoomLevel = 0; 
    update(); 
} 
function update(){ 
    currentWidth = document.myImage.width; 
    currentHeight = document.myImage.height; 
    zoomsize.innerText = zoomLevel; 
    imgsize.innerText = currentWidth + "X" + currentHeight; 
}

 html的body中的代码如下:

Html代码

<body onload="initial()"> <div id="biankuang" data-orient="center"> 
<img name="myImage" src="/img/c.jpg" alt="pic"/>     //引入本地图片 
</div> 
<p> 
<input type="button" value="放大图片" onclick="zoomIn()"> 
<input type="button" value="缩小图片" onclick="zoomOut()"> 
<input type="button" value="重置图片" onclick="resetImage()"> 
<span id="zoomsize"></span> <span id="imgsize"></span></p> 
</body>
Javascript 相关文章推荐
JavaScript 事件对象介绍
Apr 13 Javascript
jquery+html5烂漫爱心表白动画代码分享
Aug 24 Javascript
JS实现自定义简单网页软键盘效果代码
Nov 05 Javascript
jQuery进行组件开发完整实例
Dec 15 Javascript
jQuery滑动到底部加载下一页数据的实例代码
May 22 jQuery
微信小程序实现红包功能(后端PHP实现逻辑)
Jul 11 Javascript
npm 语义版本控制详解
Sep 10 Javascript
用原生JS实现爱奇艺首页导航栏代码实例
Sep 19 Javascript
在layui中对table中的数据进行判断(0、1)转换为提示信息的方法
Sep 28 Javascript
分享Angular http interceptors 拦截器使用(推荐)
Nov 10 Javascript
JS的时间格式化和时间戳转换函数示例详解
Jul 27 Javascript
JavaScript常用8种数组去重代码实例
Sep 09 Javascript
js全屏显示显示代码的三种方法
Nov 11 #Javascript
JavaScript获取多个数组的交集简单实例
Nov 11 #Javascript
JavaScript splice()方法详解
Sep 22 #Javascript
javascript与cookie 的问题详解
Nov 11 #Javascript
JavaScript设置首页和收藏页面的小例子
Nov 11 #Javascript
JS将表单导出成EXCEL的实例代码
Nov 11 #Javascript
AJAX跨域请求json数据的实现方法
Nov 11 #Javascript
You might like
虫族 Zerg 魔法科技
2020/03/14 星际争霸
PHP Array交叉表实现代码
2010/08/05 PHP
利用php获取服务器时间的实现代码
2013/06/07 PHP
解析php入库和出库
2013/06/25 PHP
PHP中的Streams详细介绍
2014/11/12 PHP
php调用淘宝开放API实现根据卖家昵称获取卖家店铺ID的方法
2015/07/29 PHP
yii框架无限极分类的实现方法
2017/04/08 PHP
PHP设计模式之策略模式原理与用法实例分析
2019/04/04 PHP
Javascript计算时间差的函数分享
2011/07/04 Javascript
jQuery实现的进度条效果
2015/07/15 Javascript
iOS和Android用同一个二维码实现跳转下载链接的方法
2016/09/28 Javascript
jquery easyui dataGrid动态改变排序字段名的方法
2017/03/02 Javascript
Vue 2.x教程之基础API
2017/03/06 Javascript
详解node child_process模块学习笔记
2018/01/24 Javascript
layui框架与SSM前后台交互的方法
2019/09/12 Javascript
Vue环境搭建+VSCode+Win10的详细教程
2020/08/19 Javascript
详解vue-cli项目在IE浏览器打开报错解决方法
2020/12/10 Vue.js
Python深入学习之上下文管理器
2014/08/31 Python
python标准算法实现数组全排列的方法
2015/03/17 Python
python操作mysql代码总结
2018/06/01 Python
pandas 对每一列数据进行标准化的方法
2018/06/09 Python
opencv3/C++ 平面对象识别&amp;透视变换方式
2019/12/11 Python
python模块和包的应用BASE_PATH使用解析
2019/12/14 Python
HTML5中实现拖放效果无须借助javascript
2012/12/26 HTML / CSS
乌克兰网上服装店:Bolf.ua
2018/10/30 全球购物
局域网标准
2016/09/10 面试题
Windows和Linux动态库应用异同
2016/07/28 面试题
英文翻译的自我评价语句
2013/10/04 职场文书
化妆品店促销方案
2014/02/24 职场文书
教师中国梦演讲稿
2014/04/23 职场文书
竞选体育委员演讲稿
2014/04/26 职场文书
小学生保护环境倡议书
2014/05/15 职场文书
新闻传播专业求职信
2014/07/22 职场文书
狼牙山五壮士观后感
2015/06/09 职场文书
农村结婚典礼主持词
2015/06/29 职场文书
MySQL Innodb关键特性之插入缓冲(insert buffer)
2021/04/08 MySQL