您好,匿名用户
随意问技术百科期待您的加入

JS点击放大图片和点击缩小图片问题

0 投票
function chgsize(e){
    if(e.getAttribute('big')&&e.getAttribute('big')=='1'){
         e.setAttribute('big','0');
         e.setAttribute('width','150');
    }else{
         e.setAttribute('big','1');
         e.setAttribute('width','500');
    }
}

这个代码只能默认150PX显示图像,点击后变成500px,但是如果原图小于500,图片就会被放大失真,我想修改一下,如果图片小于500就原图显示,如果图片大于或者等于500就按照500px显示
我在css添加了代码width: expression(this.width > 500 && this.width > this.height ? 500 : auto); max-width:500px;但是由于优先级关系,不起作用,希望高手们能帮忙改一下JS,万分感谢

用户头像 提问 2012年 12月1日 @ Artemis 上等兵 (162 威望)
分享到:

1个回答

0 投票

其实就是在点击放大的时候要获取到大图的width,然后判断一下。假设图片大图地址为 xx.com/1.jpg
在点击放大的时候:

var big = new Image();
big.onload = function() {
    if ( this.offsetWidth > 500 ) {
      //set width
    } else {
      //not set width
    }
};
big.src = 'xx.com/1.jpg';

只是简单的提供下自己的思路,希望对你有帮助。

用户头像 回复 2012年 12月1日 @ Cassiopeia 上等兵 (317 威望)
提一个问题:

相关问题

+2 投票
1 回复 202 阅读
用户头像 提问 2012年 12月27日 @ Olaf 上等兵 (366 威望)
+2 投票
1 回复 369 阅读
+1 投票
1 回复 150 阅读
0 投票
1 回复 9 阅读
用户头像 提问 2014年 3月30日 @ 坑爹 上等兵 (128 威望)
0 投票
1 回复 61 阅读
用户头像 提问 2012年 12月1日 @ Trundle 上等兵 (301 威望)

欢迎来到随意问技术百科, 这是一个面向专业开发者的IT问答网站,提供途径助开发者查找IT技术方案,解决程序bug和网站运维难题等。
温馨提示:本网站禁止用户发布与IT技术无关的、粗浅的、毫无意义的或者违法国家法规的等不合理内容,谢谢支持。

欢迎访问随意问技术百科,为了给您提供更好的服务,请及时反馈您的意见。
...