IE javascript图像大小调整不起作用
IE javascript image resize not working
我有一些javascript在IE中不起作用。
function resize($img) {
var max_size_w = 200;
var max_size_h = 200;
var h = $img.height();
var w = $img.width();
if (h > max_size_h) {
h = max_size_h;
w = Math.ceil($img.width() / $img.height() * max_size_h);
}
if (w > max_size_w) {
h = Math.ceil($img.height() / $img.width() * max_size_w);
w = max_size_w;
}
$img.css({ height: h, width: w });
}
$(window).load(function() {
// Size the images correctly
$(".personPictureImage").each(function() {
var $img = $(this).find("img");
$img.load(function() { resize($(this)); });
if($img.height())
resize($img);
});
});
在其他所有浏览器中,它都会调整图像大小以适合200x200的框。在IE中,我得到的大小是30px乘以=28px。在chrome中,我得到了200像素乘142像素。
我知道IE有问题,通常是一个糟糕的浏览器,但我无论如何都在努力支持它。如何修复我的代码以在IE中工作?
尝试替换
var max_size_w = 200;
var max_size_h = 200;
var h = $img.height();
var w = $img.width();
if (h > max_size_h) {
h = max_size_h;
w = Math.ceil($img.width() / $img.height() * max_size_h);
}
if (w > max_size_w) {
h = Math.ceil($img.height() / $img.width() * max_size_w);
w = max_size_w;
}
通过这个计算
var MAX=200,wi=$img.width(),he=$img.height(),
r=MAX/Math.max(wi,he),
w=Math.round(wi*r),
h=Math.round(he*r);
var MAX=200,
r=MAX/Math.max(this.width,this.height),
w=Math.round(this.width*r),
h=Math.round(this.height*r);
从这里拿走。
https://stackoverflow.com/a/17502568/2450730
ps.:r是比率&我也会使用纯javascript,因为所有浏览器都支持您所做的一切。
相关文章:
- 我需要一种自动调整iframe大小的方法,无论我查到什么,它都不起作用
- jQuery 可调整大小() 不起作用(带有示例)
- jquery在调整大小时响应不起作用
- 可拖动或可调整大小的文本区域不起作用
- jQuery-ui 可调整大小,在 Marionette.ItemViem 上不起作用
- jquery调整大小函数没有'不起作用
- 可调整大小的包含对我不起作用
- 旋转图像w/jQuery..但是调整大小不起作用
- JQuery 可调整大小的取消不起作用
- TinyMCE 自动调整大小插件不起作用
- 如何在客户端上调整图像大小,不起作用
- 窗口.调整大小到不起作用
- iframe 自动调整高度大小不起作用
- Jquery UI 在新元素上可调整大小不起作用
- iframe调整器不起作用/源页面甚至无法滚动
- 完整日历:在开始日期启用时间时,调整大小不起作用
- IE javascript图像大小调整不起作用
- 在小酒窝.js中对我的图表进行响应式大小调整不起作用
- 使用强制重新加载或导航回主页时,背景图像大小调整不起作用
- 窗口大小调整不起作用