<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆 - 147  文章 - 71  trackbacks - 0
    <2009年6月>
    31123456
    78910111213
    14151617181920
    21222324252627
    2829301234
    567891011

    常用鏈接

    留言簿(1)

    隨筆分類(146)

    隨筆檔案(147)

    文章分類(28)

    文章檔案(28)

    喜歡的Blog

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    1,基本描述

    1.1 方法簽名:oNewWindow = window.open( sURL , sName , sFeatures, bReplace)
    通過方法簽名可以看出,window.open在打開一個窗口(其url為sURL)后,將返回一個代表該窗口對象的一個變量
    oNewWindow,如果打開不成功,則oNewWindow的值為null。同時為了對打開的窗口預先做一些控制,提供了
    其他一些參數(sName、sFeatures、bReplace)可供選擇配置,下面將具體說明每個參數的含義

    1.2 各參數的含義

    • oNewWindow:被打開的窗口的對象
    • sUrl:被打開窗口的url
    • sName:在哪個窗口打開新的url鏈接,例如可以為_blank(新窗口)、_top(最外層窗口)等等
    • sFeatures:對窗口的一些控制屬性
      • fullscreen:是否為全屏模式(相當于F11的效果),可取值:yes/1、no/0
      • directories:是否帶有目錄按鈕(例如收藏夾中的'鏈接'目錄),可取值同上
      • location:是否帶有地址欄,可取值同上
      • channelmode:是否為影院模式,可取值同上
      • menubar:是否帶有菜單條,可取值同上
      • resizable:是否可以改變窗口的尺寸,可取值同上
      • scrollbars:是否帶有滾動條,可取值同上
      • status:是否帶有狀態欄,可取值同上
      • titlebar:是否帶有標題欄,可取值同上
      • toolbar:是否帶有快捷工具欄,可取值同上
      • height:窗口高度
      • width:窗口寬度
      • top:距屏幕上邊緣的距離
      • left:距屏幕左邊緣的距離
    • bReplace:如果在同一窗口打開新窗口,該值用于指定是否在history中替換原窗口的url鏈接,可取值:true/false

     

    2,基本使用

    • 在一個新窗口中打開某個鏈接link(/myoa/admin/manage.jsp)

         window.open ( "/myoa/admin/manage.jsp" ) ;
         或者
         window.open ( "/myoa/admin/manage.jsp" , "_blank" ) ;
         注意:這樣的話,每次執行都會打開一個新窗口,即使上次打開的新窗口未關閉,仍然會彈出新的
    • 在指定的某個窗口中打開某個鏈接link(/myoa/admin/manage.jsp)

         window.open ( "/myoa/admin/manage.jsp" , "myWiddown" ) ; //myWindow即為窗口的名稱
         注意:如果myWindow窗口不存在,那么將會新彈出一個窗口,并將新窗口命名為myWindow,只要該窗口
          不關閉,那么以后執行該open,彈出窗口均為這個已經存在的myWindow
        另外,有一些窗口名稱已經被瀏覽器使用,具有特殊的含義,例如:_blank、_top、_parent、_self等
    • 打開一個新窗口,要求窗口高度300px、寬度500px、不帶滾動條、不帶地址欄(/myoa/admin/manage.jsp)

        window.open ( "/myoa/admin/manage.jsp" , "_blank" , "height=300,width=500,scrollbars=no,location=no" ) ;
        注意:sFeatures這些參數之間是用逗號分隔的,而在window.showModalDialog中,是用分號進行分隔的,一定要注意!

     

    3,高級部分

    • 原窗口與彈出窗口之間的對象定位
      • 概述:彈出窗口是我們在頁面編程中經常使用的一種方式,從互動角度分析,彈出窗口主要有兩種類型,一種是信息顯示窗口,例如人員信息、文章信息等等;另外一種是繼續處理窗口,例如有些項目中,新建文章就是彈出窗口來完成的。對于信息顯示窗口,用戶看完之后關閉就可以了,但是對于繼續處理窗口,在用戶繼續處理之后,往往需要與原窗口進行戶動,例如當在新窗口中創建一篇文章提交后,希望在彈出窗口關閉的同時,原窗口能夠刷新等等。
      • 解決方式:上面方式的一個關鍵就是,如何獲取原窗口與彈出窗口對象,在DOM模型中我們可以明確的看到:
        • 原窗口中獲取彈出窗口對象:

        var infoWindow=window.open ( "create.jsp" , "_blank" , "width=500,height=400" ) ;
        //infoWindow即代表了彈出窗口的window對象,例如在彈出窗口中有一個表單(myForm)和表單中的一個輸入控件(username),我們可以這樣操作:
        infoWindow.document.myForm.username.value= "lisi" ;
      • 彈出窗口中獲取原窗口對象:

        如上例,在create.jsp中,我們可以如下操作來刷新原窗口
        opener.location.reload () ;
       //opener是DOM中提供的一個默認對象,表示的就是某個窗口的原窗口。
    • wondow.open的緩存處理
      • 概述:如果window.open鏈接的target指定的是一個已經存在了的窗口,尤其是原頁面中的一個frame和iframe的話,此時window.open打開的鏈接頁面將不會從服務器重新請求,而是使用瀏覽器中相應的緩存頁面,至少ie給人的感覺就是這樣的,例如:

        <input type= "button"  value= "顯示列表"  onclick= "window.open('/myoa/users/list.jsp','main','')" />
        <hr>
        <iframe name= "main"  src= "/myoa/users/list.jsp"  width= "100%"  height= "600"  frameborder= "0" ></iframe>
        第一次方式該頁面是可以看到一個列表,那么此時即使新創建一條記錄,那么再點擊“顯示列表”按鈕時,會發現列表沒有發生變化,此時關閉瀏覽器重新進行發現列表出現了剛創建的那條記錄,可見緩存起了作用。
      • 解決辦法:實驗中我們發現,中導向鏈接不會發生上面的現象,每次都是重新請求,同樣是上面的例子,使用下面的方式就是可以的:

        <a href= "/myoa/users/list.jsp"  target= "main" >顯示列表</a>
        <hr>
        <iframe name= "main"  src= "/myoa/users/list.jsp"  width= "100%"  height= "600"  frameborder= "0" ></iframe>

    不過有許多時候,我們不的不使用window.open到本頁面某個iframe的方式(以后你可能會碰到的),那么可以類這樣解決:
        <input type= "button"  value= "顯示列表"  onclick= "document.getElementById('showlist').click()" />
        <a href= "/myoa/users/list.jsp"  target= "main"  id= "showlist"  style= "display:none" >顯示列表</a>
        <hr>
        <iframe name= "main"  src= "/myoa/users/list.jsp"  width= "100%"  height= "600"  frameborder= "0" ></iframe>
        上面的找個例子比較簡單,在實際的項目中,在隱藏的link被觸發之前,還需要做許多的javascipt工作。

    posted on 2009-06-15 21:23 飛翔天使 閱讀(543) 評論(0)  編輯  收藏 所屬分類: javascript
    主站蜘蛛池模板: 国产精品免费视频播放器| 亚洲AV无码第一区二区三区| 国产精品另类激情久久久免费 | 亚洲av专区无码观看精品天堂| 亚洲人成色99999在线观看| 在线免费播放一级毛片| 国产男女猛烈无遮挡免费视频网站| 亚洲精品123区在线观看| 久久久久久久99精品免费| 免费在线观看中文字幕| 亚洲午夜久久久精品电影院| 久久国产精品免费| 国产一精品一aⅴ一免费| 亚洲性无码av在线| 日韩免费高清播放器| 四虎永久在线精品免费观看地址| 国产亚洲综合久久| 女人18一级毛片免费观看| 久久综合日韩亚洲精品色| 99精品一区二区免费视频| 久久久久亚洲?V成人无码| 亚洲av日韩精品久久久久久a| 亚洲成人在线免费观看| 亚洲AV日韩AV永久无码久久| 色www免费视频| 国产国产人免费视频成69大陆| 污网站在线免费观看| 免费精品国产自产拍观看| h视频免费高清在线观看| 亚洲精品国产va在线观看蜜芽| 精品亚洲国产成人av| 日韩激情淫片免费看| 亚洲欧美熟妇综合久久久久| 亚洲阿v天堂在线2017免费| 精品无码专区亚洲| 曰韩亚洲av人人夜夜澡人人爽| 中国videos性高清免费| 中文字幕专区在线亚洲| 8x8×在线永久免费视频| 亚洲精品偷拍无码不卡av| 巨波霸乳在线永久免费视频|