ブラウザ JavaScript
ブラウザ JavaScript とは、古い形式のスクリプトや Opera を意図せずにブロックしてしまい Opera で利用できない Web ページを自動的に修正する機能です。スクリプトファイルは自動的に Opera Software ASA から配布され、特定の Web サイトやスクリプトに対して修正が適用されます。
ブラウザ JavaScript はユーザの JavaScript 設定に従うため、JavaScript が無効とされている場合には読み込まれません。
ご注意: Opera はユーザー JavaScriptという機能も提供しています。これはユーザが個人で Web ページの拡張や修正を可能とする機能です。さらに、Opera Software ASA は Open the Web という活動を行っており、問題のある Web サイトの制作者に対してコンタクトをとっています。
更新情報の取得
- Opera はブラウザ JavaScript の更新を毎週自動的に確認します。すべての更新は自動的にダウンロードされ、Opera はダウンロード完了後に読み込んだページに対して新たなスクリプトを適用します。
- にて手動で更新の確認を行えます。
- 自動的な更新の確認については Opera6.ini の
Browser JavaScriptおよびCheck For New Operaにて設定する事ができます。 - ファイルはそれぞれのユーザごとに別々にダウンロードされます。従って、この機能は管理者権限を持たないユーザでも利用する事ができます。
- ブラウザ JavaScript は Opera Software ASA により署名され配布されますので、このファイルを編集すべきではありません。
- ファイルは Opera のプロファイルフォルダに保存されます。 の画面でプロファイルフォルダの場所を確認できます。
- 現在ブラウザ JavaScript は無効です。
ユーザ名とパスワードを必要とするプロキシサーバを利用してインターネットへ接続している場合、Opera は ua.ini や browser.js を自動的にダウンロードする際にプロキシサーバへユーザ名やパスワードによる認証を行わない点に注意してください。そのようなプロキシを利用している場合、サイトのパッチや更新情報の通知を受け取る事はできません。
ブラウザ JavaScript によって適用されるパッチ
ブラウザ JavaScript による修正が適用されると、大抵の場合ページの変更を知らせるメッセージが JavaScript コンソール () に送信されます。
特定バージョンの Opera や特定のプラットフォームに対してのみ適用される修正もあります。
修正されるサイト
- Opera が無意味に除外される問題を回避します
- Browser.js の状態とバージョンを資料ページに表示します
- Opera 7 のみを発見する古い overlibwms ライブラリを用いたオーディオサンプルを修正します
- Opera の無意味なブロックを回避します
- 数多くの修正を行います
- 数多くの修正を行います
- IE 特有の CSS ポジショニングを当てにしている問題を修正します
- load イベントがキャプチャされている問題を修正します。
- Flash コンテンツが再生されない問題を修正します
- Y!Mail beta の "add feeds" ダイアログが機能するよう修正します
- 数多くの修正を行います
- 数多くの修正を行います
- blur イベントおよび mousedown イベントに起因して Google カレンダーの日付選択が失敗する問題を修正します
- HP のショッピングサイトが小さなフォントによってデザインされている問題を修正します
- 数多くの修正を行います
- 最初のオプションが onchange によって削除されている場合選択がリセットされるように修正します
- insertRule が例外を投げたときに sony.com の UDM が壊れる問題を修正します
- 数多くの修正を行います
- Ulead.com の古い Milonic menu を修正します
- 数多くの修正を行います
- イベントリスナーがキャプチャされている問題を修正します
- ブラウザ判定によって永遠にスクロールする問題を修正します
- getFullYear を利用すべきところに getYear を利用している問題を修正します
- 小さな文字サイズを当てにしているためにデザインが崩れてしまう問題を修正します
- IFRAME によってログインが隠れてしまう問題を修正します
- 数多くの修正を行います
- クリックのトラッキングがページを上書きする問題を修正します
- Barnes&Noble にて必須でない要素に "required" 属性が指定されている問題を修正します
- 時代遅れの HierMenus が利用されている問題を修正します
- 数多くの修正を行います
- デザインモードが大文字と小文字を区別する問題を修正します
- getFullYear を利用すべきところに getYear を利用している問題を修正します
- 数多くの修正を行います
- メニューが IFRAME "shim" の裏側に現れる問題を修正します
- 数多くの修正を行います
- 数多くの修正を行います
- getFullYear を利用すべきところに getYear を利用している問題を修正します
- 不正なマークアップがなされている問題を修正します
- ID が Opera であるとき、Flash の下のメニューにスタイルが適用されない問題を修正します
- スクリプト中の for.. event.. という構文のためにロードが永久に止まらない問題を修正します
- 壊れた OpenCube によってメニューに生じる問題を修正します
- 数多くの修正を行います
- aol.de の様々な機能に対するブラウザの警告を回避します
- Flash ビデオ機能が機能する事を防ぎます
- SPAN がインラインブロックであるべきである問題を修正します
- 文字列変換を伴った INPUT のスタイルがユーザを困惑させる可能性を回避します
- 広告が再度現れる事を防ぎ、戻る・進むのナビゲーションを高速にします
- input へのフォーカスを妨げるための mousedown イベント無効化を回避します
- SPAN がインラインブロックであるべきである問題を修正します
- Gecko 固有の originalTarget を利用している問題を修正します
- 数多くの修正を行います
- 数多くの修正を行います
- document.all が存在するか否かを CSS のフィルタリングに利用している問題を修正します
- ソフトキーボードが開かれるとすぐに onresize イベントが更新を引き起こす問題を修正します
- Flash コンテンツが隠れる問題を修正します
- スクリプト中の for..event.. 構文を修正します
- 数多くの修正を行います
- N-Gage プラグインが Mac 版 Opera に Flash を与えない問題を修正します
- 中心的な Flash が表示されない問題を修正します
- load イベントがキャプチャされている問題を修正します
- load イベントがキャプチャされている問題を修正します
- getFullYear を利用すべきところに getYear を利用している問題を修正します
- Flash の検出を修正します
- Flash の検出の壊れている箇所を修正します
- 数多くの修正を行います
- new Function() 問題に次善の策を講じます
- 半分画面外に表示されてしまう問題を修正します
- frameset の中にあるdocument.load イベントハンドラスコープに起因して生じるロード時の問題を修正します
- ナビゲーションで戻る際に load イベントがキャプチャされている問題を修正します
- 変数の定義が後に行われる事を当てにして document.write がスクリプトを追加する問題を修正します
- getFullYear を利用すべきところに getYear を利用している問題を修正します
- メニューが表示されない問題を修正します
- Flash オブジェクトの自動的なサイズ変更に失敗する問題を修正します
- 時代遅れの HVMenu によってメニューに生じる問題を修正します
- 文字多重放送のフォーカスに関する問題を修正します
- UA に "Windows CE" が含まれているときスクリプトのリロードがループする問題を修正します
- 航空便の検索にて、隠された画像がロードされない事に起因して onload イベントが発生しない問題を回避します
- 地図の選択に関する問題を修正します (event.button)
- ivillage ビデオが表示されない問題を修正します
- ビデオに生じている問題を修正します
- document.all が存在するか否かをマークアップ文字列の操作に createElement を呼び出すかどうかの確認に利用している問題を修正します
- 数多くの修正を行います
- Web サイトが Opera を IE と認識してしまう事に起因して、スクリプトが誤った分岐を選択してしまう問題を修正します
- document.all に起因してマウスオーバー時のポップアップが現れない問題を修正します
- イベントキャプチャの問題を修正します
- Opera ブラウザであるとき存在しないファイルを再生する問題を回避します
- XMLHttp の再利用に関する問題を修正します
- 任意のオプションが onchange によって変更された場合選択がリセットされるように修正します。
修正されるスクリプト
- 以下の有名なメニュースクリプトの古いバージョンは Opera で動作しません。
- 「Sothink menus 3.72」およびそれ以前のもの。メニュー作成に正しいコードを利用するように、ブラウザ検出を変更します。
- 「Milonic menus」。メニュー作成に正しいコードを利用するように、ブラウザ検出を変更します。
- 「HierMenus」。メニュー作成が無効化されないように、ブラウザ検出を変更します。
- 「Likno AllWebMenus 498」およびそれ以前のもの。メニュー作成に正しいコードを利用するように、ブラウザ検出を変更します。
- 「Menu/Pop Menu (HV Menu)」。メニュー作成が無効化されないように、ブラウザ検出を変更します。
- 「Ultimate Dropdown Menu」。メニュー作成が無効化されないように、ブラウザ検出を変更します。
- 「OpenCube menus」。メニュー作成に正しいコードを利用するように、ブラウザ検出を変更します。
- 「Coolmenus」。メニュー作成に正しいコードを利用するように、ブラウザ検出を変更します。
- 「DynAPI」。ライブラリ作成に正しいコードを利用するように、ブラウザ検出を変更します。
- 「Transmenus」。ライブラリ作成に正しいコードを利用するように、ブラウザ検出を変更します。
その他のパッチ
- OPTION タグの中の Router configuration SCRIPT に関する問題の修正
- PDF のセキュリティパッチPDF security patch
ウェブマスターの方への注意事項
Opera があなたのページに変更を加えるのには例えば次のような理由があります。[DELETE ME]
- Opera は問題を引き起こすブラウザ検出を回避することがあります。
- Opera はページに含まれる互換性のない、不正な、古いといった問題のあるコードを修正することがあります。
Opera noshの修正が不適切であったり不要である場合、または問題の原因が既に修正済みの場合は、web-compliance@opera.com へメールにてご連絡ください。
Opera6.ini にある Browser JavaScript の値を 0 に設定する事で、ブラウザ JavaScript を無効化し、修正をテストすることができます。
