我正在使用 Jcrop jquery 插件,并initJcropBox()
在 onload 事件上触发该功能。
但此功能在图像完全加载之前被触发。这导致了问题。例如显示不正确的 jcropbox 大小或根本不显示 jcropbox。
当我放置一条线时,它工作正常。但不是解决方案。
setTimeout('initJcropBox()',2000);
initJcropbox()
图像在浏览器中完全加载/渲染后如何触发功能?
var api;
function initJcropBox(){
api = $.Jcrop('#cropbox',{
bgColor: 'black',
bgOpacity: .7,
onSelect: updateCoords,
onChange: updateCoords,
boxWidth: 400
});
api.animateTo([0,0,$('#cropbox').width(),$('#cropbox').height()]);
}
function insertImage(name) {
var img = new Image();
img.onload = initJcropBox;
img.src = name;
img.id = 'cropbox';
return img;
}
$('td.imageFile').live('click', function(e){
fileWithPath = "uploads/original/" + $(this).text();
$('#cropbox').remove();
$("#cropcontainer").empty().html(insertImage(fileWithPath));
});