簡體   English   中英

為什么自動關閉腳本不能用於ExtJS?

[英]Why does self-closing script not working for ExtJS?

我正在關注ExtJS教程,並嘗試創建一個新頁面。 有用。

<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title id='title'>HTML Page setup Tutorial</title>

        <!-- ** CSS ** -->
        <!-- base library -->
        <link rel="stylesheet" type="text/css" href="ext-3.3.1/resources/css/ext-all.css" />

        <!-- overrides to base library -->


        <!-- ** Javascript ** -->
        <!-- ExtJS library: base/adapter -->
        <script type="text/javascript" src="ext-3.3.1/adapter/ext/ext-base.js"></script>
        <!-- ExtJS library: all widgets -->
        <script type="text/javascript" src="ext-3.3.1/ext-all-debug.js"></script>


        <!-- overrides to library -->

        <!-- extensions -->

        <!-- page specific -->

        <script type="text/javascript">
            // Path to the blank image should point to a valid location on your server
            Ext.BLANK_IMAGE_URL = '../../resources/images/default/s.gif';

            Ext.onReady(function () {

                console.info('woohoo!!!');

            }); //end onReady
        </script>

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

但是,如果我將腳本標簽行更改為使用自閉標簽,則如下所示,它將不起作用。

<!-- ExtJS library: base/adapter -->
<script type="text/javascript" src="ext-3.3.1/adapter/ext/ext-base.js"/>

在Firebug中,它抱怨Ext.EventManager is undefined 我有兩個問題

  1. 對腳本使用自動關閉標記通常不是一個好主意嗎? 我已經閱讀了這篇文章,但聽起來對我來說是在談論xhtml。

  2. 我正在嘗試學習Javascript。 盡管我知道解決該問題的方法是不使用自閉標簽,但是我仍然想知道為什么FireFox認為Ext.EventManager是未定義的?

這不是ExtJS的問題,更多的是<script>標簽上的HTML規范。 在此處閱讀更多信息: 為什么自關閉腳本標簽不起作用?

  1. 是的,這是一個壞主意。 HTML規范所示 ,script標記需要一個結束標記-script元素

  2. 不同的瀏覽器具有不同的處理錯誤代碼的方式。 每種瀏覽器都試圖充分利用這種情況,但是對於每種情況下的最佳選擇卻有不同的看法。 處理一些錯誤代碼的一種方法是忽略它,這很可能是腳本未在Firefox中執行的原因。

此外,由於您沒有doctype標簽,因此默認情況下該頁面是HTML,而不是XHTML,因此您根本無法使用自動關閉標簽。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM