0

ここに、タグのクリックをキャッチするこの小さなコードがあります...

var debug = Base.debug;
$(document).on('click', 'a', function () {
    if (debug) {
        console.log("Caught click going to '" + $(this).attr('href') + "'");
    }
    Base.push({ href: $(this).attr('href'), extra: "Caught href from 'a' element" });
    return false;
});

私はこれを使用するときはいつでもそうですUncaught Error: SecurityError: DOM Exception 18が、いつでも使用するとpush発生しません。

pushどちらの方法でも呼び出されます。

ローカル ファイル システムを使用して開発しています。代わりにhttp私が使用しているようにfile

まだ試していhttpませんが、これに関する他の質問に従ってエラーが解消されると思います。

実際の根本的なエラーは何ですか? 実際に何がうまくいかないのですか?他の人が尋ねましたが、それを修正する方法についての回答しか得られませんでした. 理解したい。

編集1

私はエラーを追跡しました:

return m.isLastSavedState(f) ? m.busy(!1) : (m.storeState(f), m.expectedStateId = f.id, n.replaceState(f.id, f.title, f.url), m.Adapter.trigger(a, "popstate")), !0

jQuery 1.9.1

Base.pushlocalstorage にいくつかのものを保存location.assignしてから、指定されたhref

編集2

Base.push意味のない呼び出しをコメントアウトしても、エラーが発生しなくなりました。これを呼び出すBase.pushと、エラーなしでうまく実行されるためです。また、クリックはまだ続いています。hreffalse を返すと、続行が停止しません。

私の呼び出しlocation.assignaクリックされている要素の間に何かがありますか?

4

0 に答える 0