JAvascriptのBOM


ブラウザオブジェクトモデルBOMは、ブラウザにアクセスするためのインタフェースを提供します.これらの機能の多くはウェブページの内容とは関係なく、長年にわたって、規範が不足しているため、BOMの異なる方法は異なるブラウザでの実現に違いがあり、html 5までBOMの主な面を規範に組み入れた.
BOMの一般的な特性は次のとおりです.
一、windowオブジェクト
Windowsオブジェクトはブラウザで二重の役割を果たしています.ECMAscriptが規定するグローバルglobalオブジェクトであり、javascriptがブラウザウィンドウにアクセスするインタフェースでもあります.
1.画面左上に対するウィンドウの位置を取得する
//               
var leftPos=(typeof window.screenLeft==='number')?window.screenLeft:window:screenX;
var topPos=(typeof window.screenLeft==='number')?window.screenTop:window:screenY;

注意すべき点は、IE、operaでは、screenTopがページ可視領域の画面左側からの距離を保存し、chrome、firefox、safariでは、screenTop/screeenYがブラウザ領域全体の画面左側からの距離を保存していることです.つまり、ブラウザツールバーのピクセルの高さが1つ違います.
2、ウィンドウの移動、ウィンドウサイズの調整
window.moveTo(0,0)
window.moveBy(20,10)
window.resizeTo(100,100);
window.resizeBy(100,100);
これらの方法は、ブラウザで無効になる可能性が高いことに注意してください.
3.ブラウザページビューポートのサイズを取得する
var pageWith=document.documentElement.clientWidth||document.body.clientWidth;
var pageHeight=document.documentElement.clientHeight||document.body.clientHeight;

4.ウィンドウをナビゲートして開く
window.Open()は、特定のURLにナビゲートすることもできるし、4つのパラメータ、ロードするurl、ウィンドウターゲット(キーワード_self、_parent、_top、_blankであってもよい)、プロパティ文字列、およびブラウザ履歴で現在ロードされているページのブール値に代わる新しいページがあるかどうかを示す新しいブラウザウィンドウを開くこともできます.通常、最初のパラメータを渡すだけです.
多くのブラウザでは、ポップアップウィンドウがブロックされています.
5.いくつかのタイミングに関する関数(これはもともとECMAjavascriptの実装ではなくBOMの実装である)
setInterval()
setTimeout()
6.システムダイアログ、これらのダイアログの外観はオペレーティングシステム/ブラウザの設定によって決定され、cssは機能しないため、多くの場合、ダイアログをカスタマイズする必要がある場合があります.
alert():決定ボタンが付いています
confirm():OKとキャンセルボタンがあります.
prompt():OKボタンとCancelボタンのほか、テキスト入力フィールドも表示されます
 
二、locationオブジェクト
locationオブジェクトは、現在のウィンドウにロードされているドキュメントに関する情報を提供し、ナビゲーション機能も提供します.実際、これは非常に特殊なオブジェクトであり、locationはwindowオブジェクトの属性であり、documentオブジェクトの属性でもある.
location.hash#contentsはurlのhashを返し、#の後ろの内容が含まれていない場合は空の文字列を返します.
location.host  www.wrox.com:80はサーバ名とポート番号を返します
location.port 80はポート番号を返す
location.hostname  www.wrox.comはサーバ名を返す
location.href  http://www.wrox.com現在のロードページの完全urlを返します.
location.pathname  /index.htmlはurlのディレクトリとファイル名を返します
location.protocol httpはページで使用されるプロトコルを返します
location.search  ?q=javascript urlのクエリー文字列を返す
ブラウザの場所を変更するには:
location.href=http://www.baidu.com
locationを使用する場合.replace('http://www.baidu.com')、履歴に新しいレコードは生成されず、ユーザーは前のページに戻ることはできません.
location.reload():現在のページをリセットし、キャッシュから、サーバから、強制的にサーバから取得するとtrueパラメータが入力されます
 
三、navigatorオブジェクト
このオブジェクトはブラウザインスタンスを表します.プロパティはたくさんありますが、あまり多くありません.次のようになります.
navigator.userAgent:ブラウザモニタリングに使用されるユーザーエージェント文字列、
navigator.plugins:プラグインモニタリング用ブラウザプラグイン配列
navigator.registerContentHandlerは、RSSリーダーなどのオンラインプロセッサを提供するなどのプロセッサを登録する.
 
四、historyオブジェクト
historyオブジェクトは、ユーザーがインターネットを利用した履歴を保存し、go()を使用してユーザーの閲覧記録からジャンプを実現します.
history.go(-1)はhistoryに等しい.back()
history.go(1)はhistoryに等しい.forward()
history.go(1)//2ページ進む
history.go('wrox.com')
 
 
 
 
 
転載先:https://www.cnblogs.com/bobodeboke/p/6271087.html