TYPO3: получить javascript, включенный в headerData, для загрузки перед включенным «includeJS» - PullRequest
7 голосов
/ 24 августа 2010

Я загружаю 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 ]

15 голосов
/ 20 февраля 2011

вы не хотите включать 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/

Редактировать Использование URL-адреса без определенного протокола (http или https) гарантирует, что включение работает как на SSL, так и на других сайтах.

7 голосов
/ 02 сентября 2011

Небольшое дополнение к Патрику Шрайнеру, которое включает все js-файлы за один раз.Это также будет гарантировать, что выбранные файлы будут загружены первыми.

Вы можете добавить строку (forOnTop), чтобы заставить jQuery быть включенным сверху.Остальное javascript чаще всего включается последним, чтобы ускорить загрузку страницы.В этом примере я включаю несколько файлов.Специфичным для jQuery является jQuery [forceOnTop] для ... ну, я полагаю, объяснение.

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.Андерс

6 голосов
/ 27 августа 2010
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>
    )

и да, здесь нужны круглые скобки :) Вместо текста вы также можете использовать 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>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...