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 
                     ]);
});

我希望它能帮助到我这种情况的人。