• 用JS实现,图片放大和缩小


    <!DOCTYPE html>

    <html>

     

    <head>

    <meta charset="utf-8">

    <title></title>

    <style type="text/css">

    img {

    margin: 100px 0px 0px 500px;

    }

     

    #div2 {

    margin-left: 500px;

    }

     

    #max,

    #min {

    display: inline-block;

    border: 1px solid aqua;

    font-size: 30px;

    border-radius: 50%;

    background-color: #FFFF00;

    outline: none

    }

    </style>

    </head>

     

    <body>

    <div id="div1">

    <!--<img src="img/001.jpg" id="myImage" />-->

    <img src="http://img0.imgtn.bdimg.com/it/u=1244475385,1750660751&fm=21&gp=0.jpg" id="myImage"/>

    </div>

    <div id="div2">

    <input type="button" id="max" value="放大" />

    <input type="button" id="min" value="缩小" />

    </div>

    </body>

    <script type="text/javascript">

    //setInterval(fun,time) 每隔一段时间执行一次规定的函数

    //一直循环下去,时间以毫秒为单位

    //例如:

    //var timer=setInterval(function(){alert(1)},1000);

    //clearInterval(timer): 清除时间函数,终止时间函数继续执行。

    //例如:clearInterval(timer)

     

    // 步骤:

    //1.添加页面元素,实现页面布局

    //2.在页面布局的基础上,通过使用javascript来控制操作按钮,

    //从而实现页面的交互效果

    //3.

     

    window.onload = function() {

    var maxBth = document.getElementById("max");

    maxBth.onclick = function() { //添加放大点击事件

    //放大函数

    maxFun();

    }

    var img = document.getElementById("myImage");

    var maxWidth = img.width * 2; //放大的极限值

    var maxHeight = img.height * 2; //放大的高度的极限值

    //定义放大函数

    function maxFun() {

    var endWidth = img.width * 1.3; //每次点击后的宽度

    var endHeight = img.height * 1.3; //每次点击后的高度

    var maxTimer = setInterval(function() { 

    if(img.width < endWidth) {

    if(img.width < maxWidth) {

    img.width = img.width * 1.05;

    img.height = img.height * 1.05;

    } else {

    alert("已经放大到最大值了")

    clearInterval(maxTimer);

    }

    } else {

    clearInterval(maxTimer);

    }

    }, 20);

    }

    var minBtn = document.getElementById("min");

    minBtn.onclick = function() {

    minFun();

    }

     

    var minWidth = img.width * 0.5; //缩小宽度的极限值

    var minHeight = img.height * 0.5; //缩小高度的极限值

     

    //实现缩小函数

    function minFun() {

    var endWidth = img.width * 0.7; //每次点击后的宽度

    var endHeight = img.height * 0.7; //每次点击后的高度

     

    var maxTimer = setInterval(function() { 

    if(img.width > endWidth) {

    if(img.width > minWidth) {

    img.width = img.width * 0.95;

    img.height = img.height * 0.95;

    } else {

    alert("已经缩小到最小值了")

    clearInterval(maxTimer);

    }

    } else {

    clearInterval(maxTimer);

    }

    }, 20);

    }

    }

    </script>

     

    </html>

  • 相关阅读:
    基于flash的web视频对讲直播测试
    终于放弃Windows下丑陋的cmd
    直播推流兼容性问题追踪
    32位和64位dll判断
    H264编码参数的一些小细节
    cmake编译win下64位obs
    The certificate used to sign "XXX" has either expired or has been revoked
    记录一次Android交叉编译ffmpeg排查错误
    SDK "iphoneos" cannot be located
    av_interleaved_write_frame 网络不好的情况下返回较慢
  • 原文地址:https://www.cnblogs.com/niuniudashijie/p/6009635.html
Copyright © 2020-2023  润新知