0

これが問題を特定するのに十分なコードであることを願っています-私はこれを理解しようとして頭を壁にぶつけてきました。Chrome 拡張機能のポップアップ部分の Javascript です。

$('#save').click(function() {
    var baseURL = 'http://example.com/endpoint?';
    baseURL += 'a=' + encodeURIComponent($('#a').val());
    baseURL += '&b=' + encodeURIComponent($('#b').val());
    baseURL += '&c=' + encodeURIComponent($('#c').val());
    baseURL += '&d=' + encodeURIComponent($('#d').val());
    if ($('input#private').is(':checked')) {
        baseURL += '&private=true';
    }
    $('#form').css('display', 'none');
    $('#loader').fadeIn(500, function() {
        $('#popup-load').load(baseURL, function() {
            window.close();
        });
    });
});

ボタン ( #save) が 2 回クリックされていないことを確認しました (デバッグ コードを追加alert)。サーバー側にバグがある可能性がありますか?

4

1 に答える 1

0

同様の問題がありました。グローバルフラグを作成し、最初の実行で無効にすることで解決しました。これは、呼び出しごとにチェックされます。汚いが、仕事をした。

<script type="text/javascript">
    var firstRun = true;

    $('#element').load(function() {
        if (firstRun) {
            firstRun = false;
            // Rest of your code
        }
    }
</script>
于 2012-12-31T11:50:36.773 に答える