さて、これが私の問題です。AJAX 化されたサイトに 2 つの iframe を挿入する Greasemonkey スクリプトを作成していますが、ajaxComplete がループに陥り、過剰な数の iframe (場合によっては 1 つ、場合によっては 5 つなど) を生成します。
私は調査を行いましたが、私の問題は、ドキュメントへの呼び出しを適切にバインドしていないことですが、これについては確信が持てません。あなたが私がすでに持っているものとは違う方法でそれを行うかどうかはわかりません。皆さんが私を正しい方向に向けることができれば、私は感謝しています。問題のあるコードは次のとおりです。
function OnLoadWidgets() {
var tempSC = document.createElement("div");
tempSC.id = "SCWidget";
tempSC.innerHTML = "..."
document.getElementById("content-right").appendChild(tempSC);
var tempMC = document.createElement("div");
tempMC.id = "MCWidget";
tempMC.innerHTML = "..."
document.getElementById("content-right").appendChild(tempMC);
}
unsafeWindow.jQuery(document).ajaxComplete(function()
{
var existingSCPlayer = document.getElementById("SCWidget");
if(typeof(existingPlayer) == "undefined")
{
OnLoadWidgets();
}
});
残りのコードは、http: //userscripts.org/scripts/show/127312で確認できます。
また、これを機会に、ご尽力いただきました皆様に感謝の意を表したいと思います。本当に感謝してもしきれません。スタック == 命の恩人