chrome & firefoxでUserScriptを作るときに気をつけること
mac版のchrome(13.0.782.107)とfirefox(5.0.1)でUserScriptを書いていて思ったこと。
1.addEventListener()の第三引数(true or false)は必ずつける
→firefoxで動作しない
2.DOMのタグ内文字列にはinnerHTMLを使う
→innerTextはfirefoxではただのプロパティ値になってしまう
3.AjaxはXMLHttpRequestではなくGM_xmlhttpRequestを使う
→firefoxではXMLHttpRequestがクロスドメインで使えない
→また、GM_xmlhttpRequestはsetTimeout(function(){/***/}, 0)で囲わないと
"Greasemonkey access violation: unsafeWindow cannot call GM_xmlhttpRequest."
というエラーがfirefox側に出る。
僕のはまったことのことで、調べた範囲では現状こんな感じだった。
あとwindow.eventが関数またぐとchromeはのこっていてfirefoxは消えたりと謎の動きがあったり。
chromeは乱暴にやってもよしなにしてくれて、firefoxは規則に忠実な印象でした。