ウェブサイトで tinyMce エディタを使用しています。最初のページロードで、次のような onkeypress イベント ハンドラを設定しました。
window.onload = function () {
tinyMCE.activeEditor.onKeyPress.add(function () { startCookieInterval() });
}
これは firefox と chrome では問題なく動作しますが、opera では次の JavaScript エラーがスローされます。
Uncaught exception: TypeError: Cannot convert 'tinyMCE.activeEditor' to object
それで、tinyMce エディタが window.onload によって適切に初期化されていない場合に備えて、window.onload を document.onload に変更しました。これは、イベント ハンドラーが初めて呼び出される時点までは正常に機能します。ここでは、一度だけ実行したいので、イベント ハンドラーを削除します。
function startCookieInterval() {
tinyMCE.activeEditor.onKeyPress = null;
cookieIntervalTick();
}
この後、キーを押すたびに、次の JavaScript エラーが発生します。
[07/05/1983 08:35:36] JavaScript - http://localhost:10166/4_advice_only/editadviceitem.aspx?ADIID=13127831
Event thread: keypress
Uncaught exception: TypeError: Cannot convert 'v[x[t.fakeType || t.type]]' to object
Error thrown at line 8641, column 20 in r(t, A) in http://localhost:10166/includes/tiny_mce_3_3_8/tiny_mce.js:
v[x[t.fakeType || t.type]].dispatch(v, t, A)
called via Function.prototype.call() from line 3686, column 16 in <anonymous function: g>(n) in http://localhost:10166/includes/tiny_mce_3_3_8/tiny_mce.js:
return l.call(j, n)
これは、他のブラウザでは発生しません。あなたの考えを共有してください。ありがとう
ホフナルウィリー