jQuery: jCrop 'setSelect' 根本没有设置?
jQuery: jCrop 'setSelect' doesn't set at all?
我在我的网络应用程序中使用 jCrop
插件。但是,我正在尝试 pre-select
图像上的一个区域,但这根本不起作用,并且没有预先选择任何区域。
这是我的代码:
$('.position').live('click', function(){
var img = $('.selected').attr('data-image');
//create var
var jscrop_api;
//set instance to our var
$('#target').Jcrop({
// start off with jcrop-light class
bgOpacity: 0.5,
bgColor: 'black',
addClass: 'jcrop-dark',
boxWidth: 750,
boxHeight: 750,
bgFade: true,
setSelect: [ 60, 70, 540, 330 ]
}, function () {
jcrop_api = this;
});
//change image for instance
jcrop_api.setImage(img);
});
如您所见,我正在使用 setImage();
函数。所以,我不确定问题是否因此而起?
或者,是否存在任何 z-index 问题?如果 z-index 完全适用于 setSelect
?
有人可以就此问题提出建议吗?
编辑:
好的,我刚刚发现了一些没有意义但对这里的人可能有意义的东西。
如果我删除 jcrop_api.setImage(img);
并在我的 jCrop
函数中添加 setImage: img,
。它会在图像上添加预选区域,但所选图像 (img
) 不会更新或出现在裁剪区域中!
有什么建议吗?
我不确定我是否可以回答我自己的问题,但这对我有用:
$( document ).ready(function() {
jcrop_api.setSelect([ ($('#target').attr('width') / 2) - 10,
($('#target').attr('height') / 2) - 10,
($('#target').attr('width') / 2) + 10,
($('#target').attr('height') / 2) + 10
]);
});
我希望它能帮助到我这种情况的人。
我在我的网络应用程序中使用 jCrop
插件。但是,我正在尝试 pre-select
图像上的一个区域,但这根本不起作用,并且没有预先选择任何区域。
这是我的代码:
$('.position').live('click', function(){
var img = $('.selected').attr('data-image');
//create var
var jscrop_api;
//set instance to our var
$('#target').Jcrop({
// start off with jcrop-light class
bgOpacity: 0.5,
bgColor: 'black',
addClass: 'jcrop-dark',
boxWidth: 750,
boxHeight: 750,
bgFade: true,
setSelect: [ 60, 70, 540, 330 ]
}, function () {
jcrop_api = this;
});
//change image for instance
jcrop_api.setImage(img);
});
如您所见,我正在使用 setImage();
函数。所以,我不确定问题是否因此而起?
或者,是否存在任何 z-index 问题?如果 z-index 完全适用于 setSelect
?
有人可以就此问题提出建议吗?
编辑:
好的,我刚刚发现了一些没有意义但对这里的人可能有意义的东西。
如果我删除 jcrop_api.setImage(img);
并在我的 jCrop
函数中添加 setImage: img,
。它会在图像上添加预选区域,但所选图像 (img
) 不会更新或出现在裁剪区域中!
有什么建议吗?
我不确定我是否可以回答我自己的问题,但这对我有用:
$( document ).ready(function() {
jcrop_api.setSelect([ ($('#target').attr('width') / 2) - 10,
($('#target').attr('height') / 2) - 10,
($('#target').attr('width') / 2) + 10,
($('#target').attr('height') / 2) + 10
]);
});
我希望它能帮助到我这种情况的人。