TYPO3:获取“headerData”所包含的javascript,以便在“includeJS”包含的内容之前加载

时间:2010-08-23 21:16:05

标签: javascript typo3

我正在通过以下方式将JQuery加载到我的TYPO3页面中:

page.headerData.10.value = <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>

我将这样的javascript包含在内:

page.includeJS {
  file20 = fileadmin/templates/myjq.js
} 

重点是,我需要首先加载JQuery。但TYPO3把它放在我的脚本之后。 我怎么换掉它?

由于

3 个答案:

答案 0 :(得分:15)

你不希望以这种方式包含JQuery;使用

page.includeJSlibs.jquery.external = 1
page.includeJSlibs.jquery = //ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js

代替。

http://typo3.org/documentation/document-library/core-documentation/doc_core_tsref/4.3.2/view/1/6/

修改 使用没有特定协议(http或https)的URL可确保包含在SSL和非SSL站点上都有效。

答案 1 :(得分:7)

Patrick Schriner的小插件,可以一次性包含所有js文件。它还将确保首先加载选定的文件。

您可以添加一行(forOnTop)以强制将jQuery包含在顶部。为了加快页面的负载,似乎最常包含javascript javascript。在这个例子中,我包括几个文件。具体的jQuery是jQuery [forceOnTop]来......好吧,selv解释我猜。

includeJS {
   1 = fileadmin/templates/website/scripts/javascript.js
   2 = EXT:ogelementslide/res/jquery.easing.1.3.js
   3 = EXT:ogelementslide/res/jquery.easing.compatibility.js
   4 = EXT:ogelementslide/res/jquery.bxSlider.min.js
   jquery = http://ajax.googleapis.com/ajax/libs/jquery/1.6/jquery.min.js
   jquery.external = 1
   jquery.forceOnTop = 1
}

请注意,数字1-4和jQuery是等价的。我本可以写5而不是jQuery。在那种情况下,它应该是:

includeJS {
   1 = fileadmin/templates/website/scripts/javascript.js
   2 = EXT:ogelementslide/res/jquery.easing.1.3.js
   3 = EXT:ogelementslide/res/jquery.easing.compatibility.js
   4 = EXT:ogelementslide/res/jquery.bxSlider.min.js
   5 = http://ajax.googleapis.com/ajax/libs/jquery/1.6/jquery.min.js
   5.external = 1
   5.forceOnTop = 1
}

BR。安德斯

答案 2 :(得分:6)

page.headerData.10 = TEXT    
page.headerData.10.value (
     <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
     <script type="text/javascript" src="fileadmin/templates/myjq.js"></script>
    )

是的,你需要圆括号:)而不是TEXT,你也可以使用HTML。

编辑:您也可以这样做

page.headerData.10.value = <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
page.headerData.20.value = <script type="text/javascript" src="fileadmin/templates/myjq.js"></script>