Opera10alpha1のチェンジログについてのメモ
Opera10alpha1 をインストールしてみた。
こんなに早くインストールするつもりじゃなかったのだけど、チェンジログに気になるところがあったため。
- Changelog for Opera 10.0 Alpha 1 for Windows
- Changelog for Opera 10.0 Alpha 1 for UNIX
- Changelog for Opera 10.0 Alpha 1 for Mac
日本語訳はこのあたりから。
これについてメモ
getClientRects() と getBoundingClientRect()
これらの関数が返すオブジェクトの名前が変わったらしい。それぞれ、TextRectangle と TextRectangleList だそう。
というわけで、9.5系のときにあったバグがどうなっているかこれ↓で確認したところ、
どれも直ってない!
このバグのせいで自作 Hit-a-Hint ブックマークレットはかなり無駄な処理をやって遅くなっているのだけど、今のところはコードを修正する必要はないようだ (怒)。
window.setDocument
廃止になったらしい。
setDocument については id:quaa さんの RSS ログで setDocument とページ内検索してください。
おもしろいメソッドだけど使い道がないからなあ。
Selectors API
W3C の仕様書には
Objects implementing any of the Document, DocumentFragment or Element interfaces
Selectors API
とあるのだが、Opera 10では
The selectors API is experimentally supported in Opera 10 alpha (we don't implement it on the DocumentFragment nodes).
Opera 10 alpha: Web Fonts, Acid 3 and more - By Opera's Developer Relations Team
と、DocumentFragment には実装されていないらしい。正式版までには実装されるのかな? "we don't inplement it on the DocumentFragment nodes" という書き方が「これからも実装しません」の意味にも読めるのが心配。
Selectors APIと空間ナビゲーションのハイライト
空間ナビゲーションの青枠が当たっている要素のための疑似クラスで "-o-prefocus" というのがある (Opera 専用) のだけど、これも
document.querySelectorAll(':-o-prefocus')
で取得できる。しかし、この関数の評価の時点でアドレス欄にフォーカスがあったりすると、ちゃんと取得できないみたい。この場合は
document.querySelectorAll(':focus')
とかで代用できる。しかし、textarea などに空間ナビゲーションして青枠で囲まれている状態が "prefocus" なのだから、"focus" として取得できることに少し違和感がある。
document.querySelectorAll(':hover')
も同じ用途で使えるっぽい。空間ナビゲーションの青枠が出ている間は実際にマウスが hover している要素は無視されるらしい。
空間ナビゲーションである要素をハイライトしているときは、HTMLElement.focus() で他の要素をハイライトできるようになった
この部分↓はチェンジログが間違い。
A highlight will no longer be added when HTMLElement.focus() is called unless keyboard navigation is already activated
Changelog for Opera 10.0 Alpha 1 for Windows
「空間ナビゲーションである要素をハイライトしない限り、HTMLElement.focus() で他の要素をハイライトしなくなった」ではなくて、上の見出しが正解。
9.5系では、空間ナビゲーションの青枠が出ていようが出ていまいが HTMLElement.focus() では青枠は出なかった。
UserJSの実行される順番
User JS files will now be executed in alphabetical order rather than file system order
Changelog for Opera 10.0 Alpha 1 for Windows
これは意味不明。
9.5系までもアルファベット順のはずだけど。ファイルシステム順って何だろう。複数フォルダの UserJS が (実は) 使えるとか??
コメントいただきました。コンマで区切って複数のフォルダを指定することができるそうです。
Dragonflyが現在のタブを自動で選択してくれるようになった & HTTP Inspector が付いた
これは嬉しい。
JavaScript で HTTP の監視をやってるんだよなあ。おもしろそうなのであとで Dragonfly のソースを読んでみる。
同じ ID 属性値が2つある場合
The first ID (instead of the last) is now used on pages with duplicate IDs when navigating to fragment IDs
Changelog for Opera 10.0 Alpha 1 for Windows
9.5系まではドキュメントで最後にに出現するほうが使われていたけど、10からは最初にに出現するほう。
AutoPagerize で継ぎ足した要素に同じ ID が付いていると、継ぎ足す前と後で違う要素が取得されていたのだけど、それがなくなったっぽい。(未確認)
Widget はデフォルトではネットワーク接続が無効になっている
のでちゃんとソースに書いてオンにすること、と。
Network access for widgets is now opt-in. Thus, all existing widgets must be updated in order to have network access. All widgets on widgets.opera.com have been given Internet access. Network access is specified using the network attribute of the widget element. For instance, widgets that use
Changelog for Opera 10.0 Alpha 1 for Windowswill have Intranet access only. Widgets that use will have Intranet and Internet access.
今 widgets.opera.com にあるものは自動で修正されているっぽいことがどこかに書いてあった気がする。