aboutme:138720
昨晩、Firefox 4.0.1 にアップデートしてみたのだが、Greasemonkey との絡みなどで、いろいろ不具合が出たので、とりあえず 3.6.17 に戻した。
JRF 2011年5月11日 (水)
この点では、私は↓で書いた cocolog_print_fix.user.js を公開していたので、まず、それだけ直しておいた。
《Firefox でココログを印刷しようとすると本文が1ページ目しか表示されない [ JRF のソフトウェア Tips ]》
http://jrf.cocolog-nifty.com/software/2006/03/post_4.html
JRF 2011年5月11日 6014
また、今作っている Greasemonkey がらみのスクリプトは両方とも問題があるようだった。
《aboutme2cocolog: アバウトミーの「ひとこと」をココログプロへ移転するツール》
http://jrf.cocolog-nifty.com/software/2011/04/post.html
《電子署名の替わりに Loaded Magic》
http://jrf.cocolog-nifty.com/software/2011/05/post.html
JRF 2011年5月11日 3872
statuses_editor.user.js のほうは、おそらく GM_xmlhttpRequest がらみで落ちていて、summoner_trusted.js のほうは、alert + setTimeout でもろに実験をしていたから、これは↓がズバリだと思う。
《alert + setTimeout = failure (was: GM_xmlhttpRequest fails silently) - GitHub》
https://github.com/greasemonkey/greasemonkey/issues/1318#comment_975522
JRF 2011年5月11日 5283
《GM_xmlhttpRequest and Firefox 4 - greasemonkey-users | Google グループ》
http://groups.google.com/group/greasemonkey-users/browse_thread/thread/5dcab19d2fdd8ca5
《Bug 647727 ? setTimeout doesn't work after calling alert from evalInSandbox》
https://bugzilla.mozilla.org/show_bug.cgi?id=647727
JRF 2011年5月11日 9126
ただ、他にも思いあたることがあって、Firefox 4 になってから unsafeWindow と window の関係がちょっと変わったらしく、そこでちょっとおかしなことになってる可能性もある。
《Firefox 4.0b10でGreasemonkey 0.9.1のユーザスクリプトのwindowを共通にする改造(開発者orVimper向け) - wltの日記》
http://d.hatena.ne.jp/wlt/20110130/1296359063
JRF 2011年5月11日 5458
さらに、summoner_tursted.js がらみでは arguments.callee.caller が undefined になるという事態にも会った。ただ、そのチェックはちょうど、caller がGreasemonkey の「見えない」関数になるものだったのでそこだけの問題なのかもしれない。
JRF 2011年5月11日 5954
↓の「杜甫々」氏は caller は obsolete のようなことを書いているが、MDC や、その下の記事を見ると、arguments.caller はなくなるが、arguments.callee.caller はいいということになるのかと思っていたのだが…。
《関数(Function)》
http://www.tohoho-web.com/js/function.htm
JRF 2011年5月11日 3748
《function - Why was the arguments.callee.caller property deprecated in JavaScript? - Stack Overflow》
http://stackoverflow.com/questions/103598
JRF 2011年5月11日 9016
summoner_trusted.js がらみの検討(↓)の結果、JavaScript では caller はセキュリティのためには、これまで「必要」と言えたと思う。ただ、defineProperty の方法ができたので、もしかすると「必要」とまではされなくなったとか…?
《JavaScript で、読み込んだ二つのソースの間(inter-script)で安全に関数を渡す(delegation)の方法を考えていたのだが、現行のバージョンである限り、できなさそうだった。》
http://jrf.aboutme.jp/user_statuses/show/138721
JRF 2011年5月11日 7132
トラックバック
他サイトなどからこの記事に自薦された関連記事(トラックバック)の一覧です。
JavaScript で、読み込んだ二つのソースの間(inter-script)で安全に関数を渡す(delegation)の方法を考えていたのだが、現行のバージョンである限り、できなさそうだった。 続きを読む
受信: 2012-01-04 20:36:03 (JST)
こちらの問題だと納得でき対策可能なのは、E4X を使っているところで、それをそのまま渡すというのができず、toString() したから渡さないといけないというのがあった。
《Firefox4でcan’t wrap XML objectsというエラーが出る件について | Web scratch》
http://efcl.info/2011/0326/res2406/
JRF 2011年5月11日 9306