私は画像のトリミングを実装するために素晴らしいjcropプラグインを使用しています。
ただし、1つの問題があります。ユーザーに領域を選択してもらい、ダイアログボックスを表示してもらいたい。ダイアログボックスに何かを入力して[OK]をクリックすると、何も選択されていない画像に戻るようにします。
これは私のコードです:
jQuery(window).load(function(){
var jcrop_api = $.Jcrop('#cropbox',{
boxWidth: 1400,
onSelect: showAlert
});
});
function showAlert(c)
{
var structidx = prompt("Enter number here: ", "");
if (structidx!=null && structidx!="") {
// TODO: some handling here
alert("Entry has been saved");
jcrop_api.release();
} else {
jcrop_api.release();
}
};
ただし、これにより、ユーザーがプロンプトで[OK]または[キャンセル]をクリックすると、まだアクティブに「選択中」の画像に戻ります。彼らがマウスを動かすとき、それは選択し続けます-彼らは新しい領域を選択することができません。壊れた感じです。
これはjavascriptフローの問題だと思います-showAlert
終了してブラウザの前の状態に戻ります。つまり、領域が選択されています-しかし、それを回避する方法がわかりません。
ありがとう!