我正在尝试弄清楚如何在JCrop下修复选择框大小。文档提到如何设置初始选择区域,但没有提及如何使其大小固定。有人知道该如何使其大小固定吗?先感谢您。
我正在尝试弄清楚如何在JCrop下修复选择框大小。文档提到如何设置初始选择区域,但没有提及如何使其大小固定。有人知道该如何使其大小固定吗?先感谢您。
你基本上在寻找API部分。我自己广泛使用了这个插件,所以我知道你正在寻找什么:
var api;
var cropWidth = 100;
var cropHeight = 100;
$(window).load(function() {
// set default options
var opt = {};
// if height and width must be exact, dont allow resizing
opt.allowResize = false;
opt.allowSelect = false;
// initialize jcrop
api = $.Jcrop('#objectId', opt);
// set the selection area [left, top, width, height]
api.animateTo([0,0,cropWidth,cropHeight]);
// you can also set selection area without the fancy animation
api.setSelect([0,0,cropWidth,cropHeight]);
});
你可以将aspectRatio设置为小数值。
$('#jcrop_target').Jcrop({
setSelect: [0,0,150,100],
aspectRatio: 150/100
});
您可以使用aspectRatio选项。这将强制选择一个正方形
$(function(){
$('#cropbox').Jcrop({
aspectRatio: 1
});
});
或者 aspectRatio: 16/9 将使其成为宽屏 :-)
aspectRatio: 1,
minSize: [ 100, 100 ],
maxSize: [ 100, 100 ]
$(function(){
$('#jcrop_target').Jcrop({
onChange: function(){ $(this).setSelect([x, y, x2, y2]); }
});
});
这非常容易...
allowResize: false
e.g.
$(function(){
$("#CropSource").Jcrop({
aspectRatio: 1,
setSelect: [50, 0, 300,300],
allowResize: false
});
});
嗨,这可能会有所帮助 -
<script>
$(window).load(function() {
var jcrop_api;
var i, ac;
initJcrop();
function initJcrop() {
jcrop_api = $.Jcrop('#imgCrop', {
onSelect: storeCoords,
onChange: storeCoords
});
jcrop_api.setOptions({ aspectRatio: 1/ 1 });
jcrop_api.setOptions({
minSize: [180, 180],
maxSize: [180, 250]
});
jcrop_api.setSelect([140, 180, 160, 180]);
};
function storeCoords(c) {
jQuery('#X').val(c.x);
jQuery('#Y').val(c.y);
jQuery('#W').val(c.w);
jQuery('#H').val(c.h);
};
});
</script>