天天看點

HTML-JavaScript操作BOM對象

BOM模型

BOM:浏覽器對象模型(Browser Object Model)

BOM提供了獨立于内容的、可以與浏覽器視窗進行互動的對象結構

HTML-JavaScript操作BOM對象

BOM可實作功能

             1.彈出新的浏覽器視窗

             2.移動、關閉浏覽器視窗以及調整視窗的大小

             3.頁面的前進、後退

window對象

1.常用的屬性

HTML-JavaScript操作BOM對象

文法:window.屬性名= "屬性值"

示例:window.location="http://www.bdqn.cn" ;      【表示跳轉到百度首頁】

2.常用的方法

HTML-JavaScript操作BOM對象

1.confirm()方法

confirm():将彈出一個确認對話框

confirm("對話框中顯示的純文字")

<script type="text/javascript">

   var flag=confirm("确認要删除此條資訊嗎?");

    if(flag==true)

      alert("删除成功!");

      else

       alert("你取消了删除");

</script>
           

confirm( )與alert ( )、 prompt( )差別:

alert( ):一個參數,僅顯示警告對話框的消息,無傳回值,不能對腳本産生任何改變

prompt( ):兩個參數,輸入對話框,用來提示使用者輸入一些資訊,單擊“取消”按鈕則傳回null,單擊“确定”按鈕則傳回使用者輸入的值,常用于收集使用者關于特定問題而回報的資訊

confirm( ):一個參數,确認對話框,顯示提示對話框的消息、“确定”按鈕和“取消”按鈕,單擊“确定”按鈕傳回true,單擊“取消”按鈕傳回false,是以與if-else語句搭配使用

2.open( ):打開彈出網頁

window.open("彈出視窗的url","視窗名稱","視窗特征”)

視窗特征:

屬性名稱 說      明
height、width 視窗文檔顯示區的高度、寬度。以像素計
left、top 視窗的x坐标、y坐标。以像素計
toolbar=yes | no  |1 | 0 是否顯示浏覽器的工具欄。黙認是yes
scrollbars=yes | no  |1 | 0 是否顯示滾動條。黙認是yes
location=yes | no  |1 | 0 是否顯示位址地段。黙認是yes
status=yes | no  |1 | 0 是否添加狀态欄。黙認是yes
menubar=yes | no  |1 | 0 是否顯示菜單欄。黙認是yes
resizable=yes | no  |1 | 0 視窗是否可調節尺寸。黙認是yes
titlebar=yes | no  |1 | 0 是否顯示标題欄。黙認是yes
fullscreen=yes | no  |1 | 0 是否使用全屏模式顯示浏覽器。黙認是no。處于全屏模式的視窗必須同時處于劇院模式

3.close( ):網頁的關閉

window. close( );

history對象:

常用方法:

HTML-JavaScript操作BOM對象

方法中的等價關系:

HTML-JavaScript操作BOM對象

location對象

常用屬性:

HTML-JavaScript操作BOM對象

常用方法:

HTML-JavaScript操作BOM對象

location和history對象的應用

首頁面使用href實作跳轉和重新整理本頁

<a href="javascript:location.href='flower.html'" target="_blank" rel="external nofollow" >檢視鮮花詳情</a> 

<a href="javascript:location.reload()" target="_blank" rel="external nofollow" >重新整理本頁</a>

<a href="javascript:history.back()" target="_blank" rel="external nofollow" >傳回首頁面</a>
           
HTML-JavaScript操作BOM對象

Document對象

常用屬性

HTML-JavaScript操作BOM對象

文法:

document.referrer

document.URL

Document對象應用

HTML-JavaScript操作BOM對象
HTML-JavaScript操作BOM對象

判斷頁面是否是連結進入

自動跳轉到登入頁面

var preUrl=document.referrer;  //載入本頁面文檔的位址
if(preUrl==""){	
      document.write("<h2>您不是從領獎頁面進入,5秒後将自動 
                         跳轉到登入頁面</h2>");
      setTimeout("javascript:location.href='login.html'",5000);
}
           

Document對象的常用方法

HTML-JavaScript操作BOM對象

Document對象通路頁面元素:

動态改變層、标簽中的内容:

document.getElementById("book").innerHTML="現象級全球暢銷書";
           
HTML-JavaScript操作BOM對象

通路相同name的元素:

var aInput=document.getElementsByName("season");

var sStr="";

for(var i=0;i<aInput.length;i++){

   sStr+=aInput[i].value+"&nbsp;&nbsp;";  }

document.getElementById("replace").innerHTML=sStr;
           
HTML-JavaScript操作BOM對象

通路相同标簽的元素:

var aInput=document.getElementsByTagName("input");

var sStr="";

for(var i=0;i<aInput.length;i++){

   sStr+=aInput[i].value+"&nbsp;&nbsp;";  }

document.getElementById("replace").innerHTML=sStr;
           
HTML-JavaScript操作BOM對象

JavaScript内置對象

         1.Array:用于在單獨的變量名中存儲一系列的值

         2.String:用于支援對字元串的處理

         3.Math:用于執行常用的數學任務,它包含了若幹個數字常量和函數

         4.Date:用于操作日期和時間

Date對象

文法:

var 日期對象=new Date(參數)

參數格式:MM  DD,YYYY,hh:mm:ss

示例:

var  today=new Date();   //傳回目前日期和時間

var tdate=new Date("september 1,2013,14:58:12");

常用方法

HTML-JavaScript操作BOM對象

制作時鐘特效

使用Date對象的方法顯示目前時間的小時、分鐘和秒

示例

function disptime(){

var today = new Date(); 

var hh = today.getHours();

var mm = today.getMinutes();

var ss = today.getSeconds();

//獲得小時、分鐘、秒數

document.getElementById("myclock").innerHTML="現在是:"+hh +":"+mm+": "+ss;  }

disptime();

<div id="myclock"></div>
           

Math對象-常用方法

方法 說 明 示例
ceil() 對數進行上舍入

Math.ceil(25.5);傳回26

Math.ceil(-25.5);傳回-25

floor() 對數進行下舍入

Math.floor(25.5);傳回25

Math.floor(-25.5);傳回-26

round() 把數四舍五入為最接近的數

Math.round(25.5);傳回26

Math.round(-25.5);傳回-26

random() 傳回0~1之間的随機數 Math.random();例如:0.6273608814137365

如何實作傳回的整數範圍為2~99?

var iNum=Math.floor(Math.random()*98+2);

随機選擇顔色

function selColor(){
        var color=Array("紅色","黃色","藍色","綠色","橙色","青色","紫色");
        var num=Math.ceil(Math.random()*7)-1;
        document.getElementById("color").innerHTML=color[num];
}
           
HTML-JavaScript操作BOM對象

定時函數

1.setTimeout()

文法:setTimeout("調用的函數",等待的毫秒數)

示例:

HTML-JavaScript操作BOM對象

最終代碼:

<div id="myclock"></div>

<input name="s" type="button" value="顯示提示消息" onclick="timer()" />

<script>

function timer(){

    var t=setTimeout("alert('3 seconds')",3000);

}

function disptime(){

    var today = new Date(); 

    var hh = today.getHours();

    var mm = today.getMinutes();

    var ss = today.getSeconds();

document.getElementById("myclock").innerHTML="現在的時間是:"+hh+":"+mm+":"+ss;

var myTime=setTimeout("disptime() ", 1000 );  }

disptime()

【如果要多次調用,使用setInterval( )或者讓disptime( )自身再次調用setTimeout( )】

</script>
           

2.setInterval( )

文法:setInterval("調用的函數",間隔的毫秒數)

示例:

HTML-JavaScript操作BOM對象
<div id="myclock"></div>

<input name="s" type="button" value="顯示提示消息" onclick="timer()" />

<script>

function timer(){

    var t= setInterval ("alert('3 seconds')",3000);

}

function disptime(){

    var today = new Date(); 

    var hh = today.getHours();

    var mm = today.getMinutes();

    var ss = today.getSeconds();

document.getElementById("myclock").innerHTML="現在的時間是:"+hh+":"+mm+":"+ss;  }

var myTime=setInterval ("disptime() ", 1000 );

</script>
           

清除函數:

1.clearTimeout( )

文法:clearTimeout(setTimeOut()傳回的ID值)

示例:

var myTime=setTimeout("disptime() ", 1000 );

clearTimeout(myTime);
           

2.clearInterval ()

文法:clearInterval(setInterval()傳回的ID值)

示例:

var myTime=setInterval("disptime() ", 1000 );

clearInterval(myTime);
           
HTML-JavaScript操作BOM對象

繼續閱讀