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

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

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

    Flyingis

    Talking and thinking freely !
    Flying in the world of GIS !
    隨筆 - 156, 文章 - 16, 評論 - 589, 引用 - 0
    數據加載中……

    瀏覽器中的 JavaScript

    ??? 作者:Flyingis

    ??? 之前寫過不少JavaScript基礎的隨筆,基本上都是針對其語法、語言結構來論述的。但是,現在使用JavaScript最多的地方是在瀏覽器中,這里就簡單談談瀏覽器中使用JavaScript。

    ??? 在瀏覽器中使用JavaScript分為內聯和外聯兩種方法,和CSS比較相似。

    ??? 內聯

    <html>
    <head>
    <title>內聯</title>
    <script?language="JavaScript">
    ??
    function?message()?{
    ????alert(
    "Good?Day?!");
    ??}

    </script>
    </head>
    <body></body>
    </html>

    ??? 外聯

    <html>
    <head>
    <title>外聯</title>
    <script?language="JavaScript"?src="../path/external.js"></script>
    </head>
    <body></body>
    </html>

    ??? 在external.js中,可以包含任何js代碼,例如類的定義、方法函數等。相比之下,使用外聯方法引用js文件可以做到更安全、代碼更容易管理、節省資源開銷。之所以能節省資源開銷,是因為當兩個頁面同時使用一個js文件時,該js文件只會被下載一次,避免的相同代碼重復下載增加頁面的代碼量。

    ??? 網頁中的JavaScript源代碼一般放置在<head></head>區域,當寫在<body></body>中時,一旦頁面加載就會執行body中的JavaScript代碼,無法人工控制代碼的執行。如果需要頁面加載時同時執行JavaScript方法,則需要在head中定義該方法,否則系統會報錯。

    ??? JavaScript最初只有一種瀏覽器的支持,因此,需要一種方法將JavaScript代碼隱藏在老的瀏覽器中,避免對JavaScript解析產生錯誤,這就是我們過去經常可以看到的,在代碼前后加上<!--><//-->,在現在看來,這種方法已經沒有必要了,一是因為使用外聯方式引用JavaScript代碼更加合適,二是當前主流瀏覽器對JavaScript的支持已經越來越多,當然也就能正確識別JavaScript代碼。

    ??? 在瀏覽網頁時,當某張圖片無法顯示時,可以通過文字來替換它,當網頁不支持某段JavaScript代碼時,我們也能通過一種替代的方式來提醒用戶自己的瀏覽器不支持JavaScript或禁止了JavaScript,即使用<noscript></noscript>,放置在body區域中。

    ??? 隨著XHTML(eXtensible HTML)標準的出現,<script>標簽也出現了一些變化,過去我看到有的頁面在<script>標簽中使用languange屬性,有的使用type屬性,當時沒怎么注意,其實后者正是XHTML出現后所定義的,可以為JavaScript設置mime類型為"text/javascript"。

    ??? XHTML帶來的另外一個變化就是使用CDATA,使用CDATA可以在表達式中使用一些特殊字符,增強代碼的可讀性,避免使用"&lt"、"&gt"來分別表示小于和大于。

    <script?type="text/javascript">
    <![CDATA[
    ??
    function?comp(a,?b)?{
    ????
    if?(a?>?b)
    ??????alert(
    "a?is?bigger?than?b");
    ????
    else
    ??????alert(
    "a?is?not?bigger?than?b");
    ??}

    ]]
    >
    </script>

    ??? 代碼中大于和引號均使用了我們常見的書寫形式,避免了使用XML實體所帶來的閱讀上的困難。當然,這也存在舊的瀏覽器無法識別CDATA的問題,需要我們加入注釋來隱藏CDATA標簽。大家可以想到,最好的辦法還是使用外聯的方法使用JavaScript。

    <script?type="text/javascript">
    //<![CDATA[
    ??function?comp(a,?b)?{
    ????
    if?(a?>?b)
    ??????alert(
    "a?is?bigger?than?b");
    ????
    else
    ??????alert(
    "a?is?not?bigger?than?b");
    ??}

    //]]>
    </script>

    ??? 雖然部分瀏覽器還不完全支持XHTML,但我們應該盡量按照XHTML標準來書寫代碼,使得該標準能夠獲得更大更廣泛的支持。

    posted on 2006-08-31 20:01 Flyingis 閱讀(2737) 評論(0)  編輯  收藏 所屬分類: Web 客戶端技術

    主站蜘蛛池模板: 亚洲成在人天堂一区二区| 国产精品亚洲二区在线观看| a毛片免费全部播放完整成| 大地资源在线资源免费观看| 国产福利视精品永久免费| 无码乱人伦一区二区亚洲| 全部免费毛片在线播放| 久久久无码精品亚洲日韩京东传媒| 亚洲日韩激情无码一区| 2020久久精品亚洲热综合一本| 黄色免费网址在线观看| 亚洲国产成人久久精品99| 亚洲丰满熟女一区二区v| 免费大片av手机看片高清| 日日麻批免费40分钟无码| 国产男女猛烈无遮挡免费视频网站 | 国产午夜精品久久久久免费视| 免费看国产成年无码AV片| 亚洲人成电影网站色www| 免费国产成人午夜电影| 日本道免费精品一区二区| 俄罗斯极品美女毛片免费播放| 国产亚洲国产bv网站在线 | 黄网站色成年片大免费高清| 亚洲AV中文无码乱人伦| 国产一精品一av一免费爽爽 | 免费a级毛片永久免费| 亚洲成年网站在线观看| 久久国产精品免费网站| 久久亚洲国产精品五月天婷| 野花香在线视频免费观看大全| 亚洲AV伊人久久青青草原| 亚洲精品无码少妇30P| 亚洲午夜AV无码专区在线播放| 久久亚洲AV成人无码国产电影| 九九免费久久这里有精品23| 久热综合在线亚洲精品| 国产一级a毛一级a看免费视频| 亚洲免费视频播放| 日日夜夜精品免费视频| EEUSS影院WWW在线观看免费|