为了账号安全,请及时绑定邮箱和手机立即绑定

.width报错了

为什么,我定义的 var minWidth = img.width * 0.25; 在浏览器下面会说width未定义?

正在回答

1 回答

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>
<body>
<div style="width:400px;margin:0 auto">
<img src="http://img1.sycdn.imooc.com//53577ee900016c2102080260.jpg" id="myImage"  /><br />
<input type="button" id="max" value="放大"  />
<input type="button" id="min" value="缩小"  />
</div>
<script type="text/javascript">
window.onload = function(){
 var maxBtn = document.getElementById("max");
 maxBtn.onclick = function(){//添加放大点击事件
  maxFun();//放大函数  
 };
 var minBtn = document.getElementById("min");
 minBtn.onclick = function() {
  minFun();
 };
 var minWidth = img.width * 0.25;
 var minHegiht = img.height * 0.25;
 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);
   }
  },10);
 }
 //定义缩小函数
 function minFun(){
  endwidth2 = img.width * 0.7;
  var minTime = setInterval(function(){
   if(img.width > endwidth2) {
    if(img.width > minWidth) {
     img.width = img.width * 0.92;
     img.height = img.height * 0.92;
    }else{
     alert("已经是最小宽度了");
     clearInterval(minTime);
    }
   }else{
    clearInterval(minTime);
   }
  },20)
 }
}
</script>
</body>
</html>

0 回复 有任何疑惑可以回复我~
#1

队友杀手 提问者

这个是源代码,老是会在谷歌浏览器下提示Uncaught TypeError: Cannot read property 'width' of undefined at window.onload (maximg.html:23),
2017-03-21 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
用JavaScript实现图片缓慢缩放效果
  • 参与学习       32790    人
  • 解答问题       91    个

本课程讲解如何使用JavaScript技术实现图片缩放效果,并分析原理

进入课程

.width报错了

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信