Jcrop:在setImage之后,jcrop在应用新图像时不采用TrueSize

时间:2016-03-08 14:54:03

标签: javascript jcrop

我正在与Jcrop合作并尝试在响应式布局中很好地适应它。我决定它将在window.resize上销毁,并使用TrueSize参数重新初始化(如此处所示:https://stackoverflow.com/a/33592528/2126308)。但是现在我想通过setImage添加更新图像的选项,但是在更改img之后在小屏幕上,Jcrop将其调整为img的原始大小。我是否应该销毁Jcrop并重新重新初始化(如调整大小)或者我做错了什么?

1 个答案:

答案 0 :(得分:0)

我想与我的解决方案分享,因为我查看了BTW不太长的函数代码:-)而且事实证明setImage函数在不考虑TrueSize的情况下重新计算所有内容初始化时传递的尺寸。解决这个问题的唯一方法是向Jcrop添加另一种方法。不幸的是,如果我错了,请纠正我,Jcrop v0.9.12还没有编写来处理函数重载,所以我已经完成了自定义Jcrop。

具体来说,我只改变了图像上的初始尺寸

...
img.onload = function () {
    var iw = img.width;
    var ih = img.height;
    ...
}

...
img.onload = function () {
    var iw = $origimg.width();
    var ih = $origimg.height();
    ...
}