借用楼主的方法重新写了旋转图片,可自由调整角度,实力为10度。
var rr = 0;
function rotateCW(point) {
//rotateBy(90, point);
//重新定义旋转
var loacl;
if (!point) {
loacl = loaclToLoacl($moveLayer, $clipView, clipWidth * .5, clipHeight * .5);
} else {
loacl = globalToLoacl($moveLayer, point.x, point.y);
}
var origin = calculateOrigin(curAngle, loacl), // 旋转中使用的参考点坐标
originX = origin.x,
originY = origin.y;
rr -= 10;
var style = {};
style[prefix + "transform"] = " rotate(" + rr + "deg)";
style[prefix + "transform-origin"] = originX + "px " + originY + "px";
$rotateLayer.css(style);
}
不好意思,没测试,上面还是有问题,缩不到最小尺寸,只在放大部分加一个判断:
if (zoomNum === 1) {
zoomNum += 1;
}
对部分图片第一次点击放大功能,实际会将图片缩小,第二次才正常放大???查看源码,做了部分修改,
将:
var zoomNum = 0;
$(bigBtn).click(function() {
if (zoomNum < 4) {
zoomNum++;
}
var sf = zoomNum * .25;
myScroll.zoom(sf);
});
$(smallBtn).click(function() {
if (zoomNum > 0) {
zoomNum--;
}
var sf = zoomNum * .25;
myScroll.zoom(sf);
});改为:
var zoomNum = 1;
$(bigBtn).click(function() {
if (zoomNum < 4) {
zoomNum += 1;
}
var sf = zoomNum * 0.23;
myScroll.zoom(sf);
});
$(smallBtn).click(function() {
if (zoomNum > 1) {
zoomNum -= 1;
}
var sf = zoomNum * 0.23;
myScroll.zoom(sf);
});就可以解决这个问题