0

ファイルストア内の画像を編集するために、鳥小屋をファイルマネージャーにリンクしています。

親指の範囲から、ユーザーがクリックすると画像をモーダルウィンドウに開き、モーダルウィンドウを開く前に画像の src 属性を更新します

モーダルウィンドウには、鳥小屋を開いて画像をロードする鳥小屋で編集するボタンがあります。

私がthumb1をクリックしてから画像を編集すると、すべて期待どおりに機能します。次に、thumb2 の編集に問題があります。

モーダルウィンドウで正しい画像を開き、期待どおり鳥小屋で画像を正しく開きます。ただし、鳥小屋ウィンドウをロードする際の最初のサイズ変更で何か問題が発生しています。

一時画像が最初に表示され、次にこの画像の後ろにサイズ変更された (より大きな画像が表示されます)。一時画像が画面に残り、鳥小屋が壊れます。

新しいロードではすべてが期待どおりに機能しますが、2 回目のロードでは機能しません。

コンソール ログに表示されるエラーは次のとおりです。

Uncaught TypeError: Cannot call method 'isUsingHiResDimensions' of undefined 

最初の画像のモーダルを閉じて鳥小屋の設定をクリアすると、次回はきれいに始める方法はありますか?

私はこの関数で鳥小屋を呼び出しています:

$(document).ready(function() {
    $('.thumbnail').click(function(event) {
        var imagePreview = $('#image1');
        imagePreview.attr('src',$(this).attr('href'));
        $('#editImageLink').click(function(event) {
            return launchEditor('image1', imagePreview.attr('src'));
        });
        $('#imagePreview').modal('show');
        return false;
    });
});

私の鳥小屋の初期化はここにあります:

var featherEditor = new Aviary.Feather({
    apiKey: 'mycode',
    apiVersion: 3,
    theme: 'dark', // Check out our new 'light' and 'dark' themes!
    tools: 'all',
    appendTo: '',
    onSave: function(imageID, newURL) {
        var img = document.getElementById(imageID);
        img.src = newURL;
    },
    onError: function(errorObj) {
        alert(errorObj.message);
    }
});
function launchEditor(id, src) {
    featherEditor.launch({
        image: id,
        url: src
    });
    return false;
}

ページを更新する以外に、クリアしてやり直すために何をする必要があるかわからないので、助けていただければ幸いです。

4

1 に答える 1

1

より多くのクリックイベントをバインドしてeditImageLinkいるため、コードが複数回実行されています。

適切なバインディングは次のようになります。

$(document).ready(function() {
    var imagePreview = $('#image1');

    $('.thumbnail').click(function(event) {
        imagePreview.attr('src',$(this).attr('href'));
        $('#imagePreview').modal('show');
        return false;
    });

    $('#editImageLink').click(function(event) {
        return launchEditor('image1', imagePreview.attr('src'));
    });
});
于 2013-11-03T12:25:59.337 に答える