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 相关文章推荐
左侧是表头的JS表格控件(自写,网上没有的)
Jun 04 Javascript
jQuery Validate表单验证插件 添加class属性形式的校验
Jan 18 Javascript
基于JQuery打造无缝滚动新闻步骤详解
Mar 31 Javascript
关于JS中的apply,call,bind的深入解析
Apr 05 Javascript
iScroll.js 使用方法参考
May 16 Javascript
过期软件破解办法实例详解
Jan 04 Javascript
微信小程序 登陆流程详细介绍
Jan 17 Javascript
vue2.0实现导航菜单切换效果
May 08 Javascript
vue-cli webpack 引入swiper的操作方法
Sep 15 Javascript
微信小程序实现搜索历史功能
Mar 26 Javascript
layui输入框中只允许输入整数的实现方法
Sep 18 Javascript
详解webpack-dev-middleware 源码解读
Mar 23 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
php利用header函数实现文件下载时直接提示保存
2009/11/12 PHP
Yii中CGridView关联表搜索排序方法实例详解
2014/12/03 PHP
php使用PDO方法详解
2014/12/27 PHP
PHP下SSL加密解密、验证、签名方法(很简单)
2020/06/28 PHP
php版微信公众平台回复中文出现乱码问题的解决方法
2016/09/22 PHP
PHP中的empty、isset、isnull的区别与使用实例
2019/03/22 PHP
javascript编程起步(第七课)
2007/01/10 Javascript
jQuery 全选效果实现代码
2009/03/23 Javascript
基于JQUERY的多级联动代码
2012/01/24 Javascript
node.js中的events.emitter.removeListener方法使用说明
2014/12/10 Javascript
Nodejs为什么选择javascript为载体语言
2015/01/13 NodeJs
js将字符串中的每一个单词的首字母变为大写其余均为小写
2017/01/05 Javascript
JavaScript中transform实现数字翻页效果
2017/03/08 Javascript
React学习笔记之条件渲染(一)
2017/07/02 Javascript
layui实现table加载的示例代码
2018/08/14 Javascript
Node+OCR实现图像文字识别功能
2018/11/26 Javascript
[51:53]DOTA2-DPC中国联赛 正赛 RNG vs Dragon BO3 第二场 1月24日
2021/03/11 DOTA
python将多个文本文件合并为一个文本的代码(便于搜索)
2011/03/13 Python
python3生成随机数实例
2014/10/20 Python
ansible作为python模块库使用的方法实例
2017/01/17 Python
numpy中索引和切片详解
2017/12/15 Python
python实现flappy bird游戏
2018/12/24 Python
pytest中文文档之编写断言
2019/09/12 Python
python实现小世界网络生成
2019/11/21 Python
Python制作数据预测集成工具(值得收藏)
2020/08/21 Python
浅谈Html5多线程开发之WebWorkers
2018/05/02 HTML / CSS
英智兴达软件测试笔试题
2016/10/12 面试题
项目经理的岗位职责
2013/11/23 职场文书
硕士研究生就业推荐信
2014/05/18 职场文书
小学清明节活动总结
2014/07/04 职场文书
餐饮服务食品安全责任书
2014/07/25 职场文书
教师正风肃纪剖析材料
2014/10/20 职场文书
2015大学生自我评价范文
2015/03/03 职场文书
新生儿未入户证明
2015/06/23 职场文书
python实战之用emoji表情生成文字
2021/05/08 Python
pandas中对文本类型数据的处理小结
2021/11/01 Python