<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                [TOC] * * * * * ### 一、什么是BOM #### **1. 概述** 瀏覽器對象模型(Browser Object Model (BOM))是JavaScript的組成之一,他提供了獨立與內容與瀏覽器窗口進行交互的對象,使用瀏覽器對象模型可以實現與HTML的交互。 #### **2. 核心 window 對象** BOM 的核心對象是 window ,它表示瀏覽器的一個實例。在瀏覽器中, window 對象有雙重角色,它既是通過 JavaScript 訪問瀏覽器窗口的一個接口,又是 ECMAScript 規定的 Global 對象。 - 通過window可以操作整個瀏覽器。 - 所有瀏覽器都支持 window 對象。它表示瀏覽器窗口。 - 所有 JavaScript 全局對象、函數以及變量均自動成為 window 對象的成員。 - 全局變量是 window 對象的屬性。 - 全局函數是 window 對象的方法。 - 甚至 HTML DOM 的 document 也是 window 對象的屬性之一: BOM 和 DOM 的關系可以用下圖表示 ![BOM圖譜](http://www.itxueyuan.org/uploads/allimg/121112/1-121112154254459.png)0 ### 二、BOM操作 #### **1. window對象** ```JavaScript window.close(); //關閉窗口 window.alert("message"); //彈出一個具有OK按鈕的系統消息框,顯示指定的文本 window.confirm("Are you sure?"); //彈出一個具有OK和Cancel按鈕的詢問對話框,返回一個布爾值 window.prompt("What's your name?", "Default"); //提示用戶輸入信息,接受兩個參數,即要顯示給用戶的文本和文本框中的默認值,將文本框中的值作為函數值返回 window.status //可以使狀態欄的文本暫時改變 window.defaultStatus //默認的狀態欄信息,可在用戶離開當前頁面前一直改變文本 window.setTimeout(function(){}, 1000) //設置在指定的毫秒數后執行指定的代碼,接受2個參數,要執行的代碼和等待的毫秒數 window.clearTimeout("ID") //取消還未執行的暫停,將暫停ID傳遞給它 window.setInterval(function(){}, 1000) //無限次地每隔指定的時間段重復一次指定的代碼,參數同setTimeout()一樣 window.clearInterval("ID"); //取消時間間隔,將間隔ID傳遞給它 window.history.go(-1); //訪問瀏覽器窗口的歷史,負數為后退,正數為前進 window.history.back(); //訪問瀏覽器窗口的歷史,負數為后退,正數為前進 window.history.forward(); //訪問瀏覽器窗口的歷史,負數為后退,正數為前進 window.history.length //可以查看歷史中的頁面數 ``` #### **2 document 對象** ```JavaScript document對象:實際上是window對象的屬性,document == window.document為true,是唯一一個既屬于BOM又屬于DOM的對象 document.lastModified //獲取最后一次修改html文檔的日期的字符串表示 document.referrer //用于跟蹤用戶從哪里鏈接過來的 document.title //獲取當前頁面的標題,可讀寫 document.URL //獲取當前頁面的URL,可讀寫 document.anchors[0]或document.anchors["anchName"] //訪問頁面中所有的錨 document.forms[0]或document.forms["formName"] //訪問頁面中所有的表單 document.images[0]或document.images["imgName"] // 訪問頁面中所有的圖像 document.links [0]或document.links["linkName"] //訪問頁面中所有的鏈接 document.applets [0]或document.applets["appletName"] //訪問頁面中所有的Applet document.embeds [0]或document.embeds["embedName"] //訪問頁面中所有的嵌入式對象 document.write(); 或document.writeln(); //將字符串插入到調用它們的位置 ``` #### **3. location對象** ```JavaScript location對象:表示載入窗口的URL,也可用window.location引用它 location.href //當前載入頁面的完整URL,如http://www.somewhere.com/pictures/index.htm location.portocol //URL中使用的協議,即雙斜杠之前的部分,如http location.host //服務器的名字,如www.wrox.com location.hostname //通常等于host,有時會省略前面的www location.port //URL聲明的請求的端口,默認情況下,大多數URL沒有端口信息,如8080 location.pathname //URL中主機名后的部分,如/pictures/index.htm location.search //執行GET請求的URL中的問號后的部分,又稱查詢字符串,如?param=xxxx location.hash //如果URL包含#,返回該符號之后的內容,如#anchor1 location.assign("http:www.baidu.com"); //同location.href,新地址都會被加到瀏覽器的歷史棧中 location.replace("http:www.baidu.com"); //同assign(),但新地址不會被加到瀏覽器的歷史棧中,不能通過back和forward訪問 location.reload(true | false); //重新載入當前頁面,為false時從瀏覽器緩存中重載,為true時從服務器端重載,默認為false ``` #### **4. navigator對象** `navigator` 對象:包含大量有關Web瀏覽器的信息,在檢測瀏覽器及操作系統上非常有用,也可用window.navigator引用它 ```JavaScript navigator.appCodeName //瀏覽器代碼名的字符串表示 navigator.appName //官方瀏覽器名的字符串表示 navigator.appVersion //瀏覽器版本信息的字符串表示 navigator.cookieEnabled //如果啟用cookie返回true,否則返回false navigator.javaEnabled //如果啟用java返回true,否則返回false navigator.platform //瀏覽器所在計算機平臺的字符串表示 navigator.plugins //安裝在瀏覽器中的插件數組 navigator.taintEnabled //如果啟用了數據污點返回true,否則返回false navigator.userAgent //用戶代理頭的字符串表示 ``` 我們經常使用navigator對象來判斷平臺的類型,比如: ```JavaScript var u = navigator.userAgent; var isAndroid = u.indexOf('Android') > -1 || u.indexOf('Adr') > -1; //android終端 var isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios終端 var isMobile = !!u.match(/AppleWebKit.*Mobile.*/) //是否為移動終端 var isIpad = u.indexOf('iPad') > -1 //是否iPad var isWecath = u.indexOf('MicroMessenger') > -1 //是否微信 var isIE = u.indexOf('Trident') > -1 //IE內核 var isWebkit = u.indexOf('AppleWebKit') > -1 //蘋果、谷歌內核 var isFireFox = u.indexOf('Gecko') > -1 && u.indexOf('KHTML') == -1 //火狐內核 var isOpera = u.indexOf('Presto') > -1 //opera內核 ``` #### **5. screen對象** `screen`對象:用于獲取某些關于用戶屏幕的信息,也可用window.screen引用它 ```JavaScript screen.width/height //屏幕的寬度與高度,以像素計 screen.availWidth/availHeight //窗口可以使用的屏幕的寬度和高度,以像素計 screen.colorDepth //用戶表示顏色的位數,大多數系統采用32位 window.moveTo(0, 0); //控制瀏覽器滾動條的位置 window.resizeTo(screen.availWidth, screen.availHeight); //填充用戶的屏幕 ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看