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

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

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

    恩達

    可愛的兒子--陽陽坨

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
      43 隨筆 :: 14 文章 :: 55 評論 :: 0 Trackbacks
    原貼地址:http://birdshome.cnblogs.com/archive/2006/06/23/control_browser_title.html
    ?
    IE以及任何目前瀏覽器的標題欄,原本都應該是由<title>這個HTML標簽來控制的,當然現在仍然也是。只是目前的鬼趨勢是,你最好不要再刷新你的網頁頁面了,然后還需要接受用戶的任意蹂躪。這也就是傳說中神龍見首不見尾,殺人于無影無形的悖時Ajax技術!

    ????在瀏覽器的標題欄中顯示貼切的頁面標題,是一個網頁專業的表現,同時也能對搜索引擎友好。當然如果放上適當的提示信息,也會很有意義。那么怎么"動態"的來定制這個標題內容呢?

    ????我們知道使用ASP動態修改瀏覽器title,大概是這樣的語句:
    ????<title><%?=?GenerateTitle?%></title>


    ????而在ASP.NET 1.1中,除了仍可以使用上面的方法外,我們多了一個看起來"很美"的方法:

    ????In?aspx?page:?
    ????????
    <title?id="cltTitle"?runat="server"></title>

    ????In?CS?file:?
    ????????protected?HtmlGeneralControl?cltTitle;
    ????????. . .
    ????????cltTitle.innerHtml?=?"birdshome's?homepage";


    ??? 今天到了ASP.NET 2.0時代,除了上面的兩種方法,我們還可以更容易的修改<title>內容:?

    ???Page.Title?=?"birdshome's?homepage";


    ????不過上面的"動態"都是在服務器端修改<title>的內容,實際上對于瀏覽器來說<title>標簽內的內容是完全固定的了。下面言歸正傳,仔細來說說在客戶端對IE瀏覽器標題欄的控制:

    ??? 對于IE窗口中的頁面,在頁面DOM對象中,document.title屬性是用來代替<title>元素的innerHTML獲取和設置IE窗口標題欄內容的。請看下面這個示例:

    <html>
    <body>
    ????<!--?page?content?-->
    ????
    <script?language="javascript">
    ????
    ????document.body.onload?
    =?function
    ()
    ????{
    ????????document.title?
    =?"birdshome's?homepage"

    ????};
    ????</script>
    </body>
    </html>


    ??? 對,就是這么簡單就可以設置好普通IE窗口的標題欄。那么這有什么好說的呢?這時候如果我們把完全相同的代碼放入模態窗口中執行呢?模態窗口的標題欄是否會被修改?試驗結果卻是讓人沮喪的,完全相同的這段代碼,在模態窗口中就失靈了。難道模態窗口提供的DOM和普通窗口不同嗎?其實模態窗口的DOM和普通窗口是相同的,而不同之處是當模態窗口中的頁面裝載完成后,document.title屬性確實會失效。這就是為什么在上面的示例代碼onload事件中的語句無效的原因。解決這個限制的方法很簡單,就是要在頁面還未裝載完成時就修改document.title,所以在模態窗口中修改IE標題欄就因該使用這樣的代碼:

    <html>
    <body>
    ????
    <!--?page?content?-->
    ????
    <script?language="javascript">????
    ????document.title?
    =?"birdshome's?homepage"

    ????
    </script>

    </body>
    </html>


    ??? 下面是一個包含了以上兩種修改瀏覽器標題欄方法的示例,將其保存為"abc.htm"文件,使用IE打開你就能很直觀看到區別:

    <html>
    <body>
    ????
    <button?onclick="foo()">
    ????????Open
    </button>
    ????
    <script?language="javascript">
    ????document.body.onload?
    =?function()
    ????{
    ????????document.title?
    =?"birdshome's?homepage?(rewrite)"?+
    ?unescape(H_A0);
    ????};

    ????document.title?
    =?"birdshome's?homepage?(first)"?+
    ?unescape(H_A0);

    ????
    function
    ?foo()
    ????{
    ????????window.showModalDialog(
    "abc.htm"
    );
    ????}
    ????
    </script>

    </body>
    </html>


    ??? 結果是普通IE窗口的標題欄會從"birdshome's homepage (first)"快速的變為"birdshome's homepage (rewrite)",而使用Open按鈕開啟的模態對話框的標題將一直是"birdshome's homepage (first)"。從這個示例中我們可以看出來,對于普通IE窗口,其標題欄是可以在頁面生存期的任意時刻進行修改的。而模態窗口的標題欄,我們只能在其頁面裝載完成前(onload事件觸發前)才能修改。非模態對話框,opend by showModelessDialog,對于標題欄的處理和模態對話框完全一樣。

    ??? 最后再說一個document.title使用中的技巧,我們知道如果在服務器端"動態"修改頁面title時,我們可以向<title></title>標簽間寫入&nbps;來在標題欄上產生連續的空格輸入效果。這個技巧在模態窗口中尤為有用,這樣一來我們就可以把那討厭的" - Web Page Dialog"字樣用連續空格推到標題欄外去。使用document.title屬性來修改頁面標題欄后,不管是普通窗口還是模態窗口,"&nbsp;"和" "(空格)都不能用了,前者會被直接當字符串顯示在標題欄上,后者添加再多也只有一個" "(空格)的寬度效果。這里我們又要使用另一個空格,實體&#160;來解決這個問題。代碼如下:

    <html>
    <body>
    ????
    <script?language="javascript">
    ????
    var?HexA0s?=?"%A0?%A0?%A0?%A0";
    ????
    ????document.body.onload?
    =?function
    ()
    ????{
    ????????document.title?
    =?"birdshome's?homepage?(rewrite)"?+
    ?unescape(HexA0s);
    ????};
    ????
    </script>

    </body>
    </html>
    posted on 2006-07-20 15:15 恩達 閱讀(524) 評論(0)  編輯  收藏 所屬分類: JAVASCRIPT
    主站蜘蛛池模板: 亚洲爆乳精品无码一区二区三区| 国产精品成人免费综合| 最新仑乱免费视频| 亚洲一区二区三区影院| 亚洲一级毛片免费在线观看| 无码免费又爽又高潮喷水的视频 | 在线观看免费成人| 成人片黄网站色大片免费观看cn| 亚洲欧洲精品成人久久奇米网 | 国产成人免费ā片在线观看| 中文在线观看免费网站| AV大片在线无码永久免费| 国产在线19禁免费观看| 成熟女人牲交片免费观看视频 | 一级毛片在线完整免费观看| 亚洲毛片基地日韩毛片基地| 亚洲综合国产一区二区三区 | 亚洲永久无码3D动漫一区| 亚洲色偷偷综合亚洲AV伊人| 久久香蕉国产线看免费| 色哟哟国产精品免费观看| 羞羞漫画登录页面免费| 色多多A级毛片免费看| 亚洲欧美日韩综合俺去了| 美女又黄又免费的视频| 黄色网站软件app在线观看免费| 嫩草影院在线播放www免费观看 | 久久久久高潮毛片免费全部播放| 亚洲精品无码不卡在线播HE| 中文字幕的电影免费网站| 久久亚洲国产精品123区| 国精产品一区一区三区免费视频| 亚洲午夜无码久久久久| 99热在线免费观看| 亚洲性无码一区二区三区| 免费播放春色aⅴ视频| 精品国产免费一区二区三区香蕉 | 老司机免费午夜精品视频| 亚洲AV无码专区电影在线观看| 91麻豆最新在线人成免费观看| 亚洲另类无码一区二区三区|