ブラウザ 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.iniBrowser JavaScript および Check For New Opera にて設定する事ができます。
  • ファイルはそれぞれのユーザごとに別々にダウンロードされます。従って、この機能は管理者権限を持たないユーザでも利用する事ができます。
  • ブラウザ JavaScript は Opera Software ASA により署名され配布されますので、このファイルを編集すべきではありません。
  • ファイルは Opera のプロファイルフォルダに保存されます。ヘルプ > Opera について の画面でプロファイルフォルダの場所を確認できます。
  • 現在ブラウザ JavaScript は無効です。

ユーザ名とパスワードを必要とするプロキシサーバを利用してインターネットへ接続している場合、Opera は ua.ini や browser.js を自動的にダウンロードする際にプロキシサーバへユーザ名やパスワードによる認証を行わない点に注意してください。そのようなプロキシを利用している場合、サイトのパッチや更新情報の通知を受け取る事はできません。

ブラウザ JavaScript によって適用されるパッチ

ブラウザ JavaScript による修正が適用されると、大抵の場合ページの変更を知らせるメッセージが JavaScript コンソール (ツール > 詳細ツール > エラーコンソール) に送信されます。

特定バージョンの Opera や特定のプラットフォームに対してのみ適用される修正もあります。

修正されるサイト

saab
  • Opera が無意味に除外される問題を回避します
www.opera.com / jp.opera.com
  • Browser.js の状態とバージョンを資料ページに表示します
music.download.com
  • Opera 7 のみを発見する古い overlibwms ライブラリを用いたオーディオサンプルを修正します
fileplanet.com
  • Opera の無意味なブロックを回避します
jobkorea.co.kr
  • 数多くの修正を行います
joins.com
  • 数多くの修正を行います
moneta.co.kr
  • IE 特有の CSS ポジショニングを当てにしている問題を修正します
epa.qld.gov.au
  • load イベントがキャプチャされている問題を修正します。
ford.com
  • Flash コンテンツが再生されない問題を修正します
rec.feeds.yahoo
  • Y!Mail beta の "add feeds" ダイアログが機能するよう修正します
dell
  • 数多くの修正を行います
ebay
  • 数多くの修正を行います
google
  • blur イベントおよび mousedown イベントに起因して Google カレンダーの日付選択が失敗する問題を修正します
hp.com
  • HP のショッピングサイトが小さなフォントによってデザインされている問題を修正します
mail.yahoo
  • 数多くの修正を行います
scandinavian.net
  • 最初のオプションが onchange によって削除されている場合選択がリセットされるように修正します
Sony
  • insertRule が例外を投げたときに sony.com の UDM が壊れる問題を修正します
t-online.de
  • 数多くの修正を行います
Ulead
  • Ulead.com の古い Milonic menu を修正します
Yahoo
  • 数多くの修正を行います
able.co.jp
  • イベントリスナーがキャプチャされている問題を修正します
adobe.com
  • ブラウザ判定によって永遠にスクロールする問題を修正します
AirFrance
  • getFullYear を利用すべきところに getYear を利用している問題を修正します
alice.it
  • 小さな文字サイズを当てにしているためにデザインが崩れてしまう問題を修正します
aol.co.uk
  • IFRAME によってログインが隠れてしまう問題を修正します
aol.com
  • 数多くの修正を行います
apple.com
  • クリックのトラッキングがページを上書きする問題を修正します
barnesandnoble.com
  • Barnes&Noble にて必須でない要素に "required" 属性が指定されている問題を修正します
bioware.com
  • 時代遅れの HierMenus が利用されている問題を修正します
blogger.com
  • 数多くの修正を行います
bloglines.com
  • デザインモードが大文字と小文字を区別する問題を修正します
bnz.co.nz
  • getFullYear を利用すべきところに getYear を利用している問題を修正します
britishairways
  • 数多くの修正を行います
budget.com
  • メニューが IFRAME "shim" の裏側に現れる問題を修正します
bugs.co.kr
  • 数多くの修正を行います
chosun.com
  • 数多くの修正を行います
dancenter.com
  • getFullYear を利用すべきところに getYear を利用している問題を修正します
dcf-access.dcf.state.fl.us
  • 不正なマークアップがなされている問題を修正します
dowjones.com
  • ID が Opera であるとき、Flash の下のメニューにスタイルが適用されない問題を修正します
eatsleepsport.com
  • スクリプト中の for.. event.. という構文のためにロードが永久に止まらない問題を修正します
emirates.com
  • 壊れた OpenCube によってメニューに生じる問題を修正します
fes.ebank.co.jp
  • 数多くの修正を行います
fotocenter.aol.de
  • aol.de の様々な機能に対するブラウザの警告を回避します
foxnews.com
  • Flash ビデオ機能が機能する事を防ぎます
hangame.com
  • SPAN がインラインブロックであるべきである問題を修正します
icicidirect.com
  • 文字列変換を伴った INPUT のスタイルがユーザを困惑させる可能性を回避します
idg.se
  • 広告が再度現れる事を防ぎ、戻る・進むのナビゲーションを高速にします
imageshack.us
  • input へのフォーカスを妨げるための mousedown イベント無効化を回避します
ipop.co.kr
  • SPAN がインラインブロックであるべきである問題を修正します
klm.com
  • Gecko 固有の originalTarget を利用している問題を修正します
mail.google
  • 数多くの修正を行います
makemytrip.com
  • 数多くの修正を行います
maps.ubiest.com
  • document.all が存在するか否かを CSS のフィルタリングに利用している問題を修正します
maybank2u.com.my
  • ソフトキーボードが開かれるとすぐに onresize イベントが更新を引き起こす問題を修正します
msnbc.com
  • Flash コンテンツが隠れる問題を修正します
music.mu-mo.net
  • スクリプト中の for..event.. 構文を修正します
myspace.com
  • 数多くの修正を行います
n-gage.com
  • N-Gage プラグインが Mac 版 Opera に Flash を与えない問題を修正します
namooya.com
  • 中心的な Flash が表示されない問題を修正します
nbc4.tv
  • load イベントがキャプチャされている問題を修正します
nbcolympics.com
  • load イベントがキャプチャされている問題を修正します
nectar.com
  • getFullYear を利用すべきところに getYear を利用している問題を修正します
nick.com
  • Flash の検出を修正します
Nokia
  • Flash の検出の壊れている箇所を修正します
nrg.co.il
  • 数多くの修正を行います
orbitz.com
  • new Function() 問題に次善の策を講じます
pda.naver.com
  • 半分画面外に表示されてしまう問題を修正します
pogo.com
  • frameset の中にあるdocument.load イベントハンドラスコープに起因して生じるロード時の問題を修正します
prisjakt.nu
  • ナビゲーションで戻る際に load イベントがキャプチャされている問題を修正します
reviews.cnet.com
  • 変数の定義が後に行われる事を当てにして document.write がスクリプトを追加する問題を修正します
sabadellatlantico.com
  • getFullYear を利用すべきところに getYear を利用している問題を修正します
search.live.com
  • メニューが表示されない問題を修正します
skysports.com
  • Flash オブジェクトの自動的なサイズ変更に失敗する問題を修正します
synaptics.com
  • 時代遅れの HVMenu によってメニューに生じる問題を修正します
teletekst.nos.nl
  • 文字多重放送のフォーカスに関する問題を修正します
time.com
  • UA に "Windows CE" が含まれているときスクリプトのリロードがループする問題を修正します
united.com
  • 航空便の検索にて、隠された画像がロードされない事に起因して onload イベントが発生しない問題を回避します
viamichelin.com
  • 地図の選択に関する問題を修正します (event.button)
video.ivillage.com
  • ivillage ビデオが表示されない問題を修正します
video.nbc.com
  • ビデオに生じている問題を修正します
wachovia.com
  • document.all が存在するか否かをマークアップ文字列の操作に createElement を呼び出すかどうかの確認に利用している問題を修正します
walla.co.il
  • 数多くの修正を行います
washingtonpost.com
  • Web サイトが Opera を IE と認識してしまう事に起因して、スクリプトが誤った分岐を選択してしまう問題を修正します
worldofwarcraft.com
  • document.all に起因してマウスオーバー時のポップアップが現れない問題を修正します
yellowpages.com.au
  • イベントキャプチャの問題を修正します
zdnet.com.com
  • Opera ブラウザであるとき存在しないファイルを再生する問題を回避します
aumypage.duogate.jp
  • XMLHttp の再利用に関する問題を修正します
https://www.bookryanair.com/skylights/cgi-bin/skylights.cgi
  • 任意のオプションが 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 を無効化し、修正をテストすることができます。