Javascript aus Erweiterungen entfernen und manuell einbinden
Standardmäßig werden in TYPO3 verschiedene Javascript Bibliotheken geladen. Hinzukommen bei einigen Erweiterungen weitere Bibliotheken. Es kann dabei auch vorkommen, dass Javascript Bibliotheken doppelt geladen werden. Zwei verschiedene Extensions laden die gleiche Bibliothek mehrmals. Dadurch entstehen Konflikte und erfordern eine manuelle Anpassung. Unnötige oder mehrfach geladene Javascripts können manuell entfernt werden und nur noch die für sinnvoll erachteten eingebunden werden.
Um alle Javascript's von TYPO3 und allen Extensions zu entfernen muss dieses Typoscript im Root-Template der Seite eingebunden werden (Achtung es werden alle JS nicht nur die Bibliotheken entfernt):
# löscht alle im "head" inkludierten Javascript's
page.includeJS >
# löscht alle im "head" inkludierten Javascript's Bibliotheken
page.includeJSlibs >
# löscht alle vor dem schließenden "body" inkludierten Javascript's
page.includeJSFooter >
# löscht alle vor dem schließenden "body" inkludierten Javascript's Bibliotheken
page.includeJSFooterlibs >
# löscht alle inline inkludierten Javascript's
page.jsInline >
# löscht alle inline, vor dem schließenden "body" inkludierten Javascript's
page.jsFooterInline >
Bei den Werten "page.jsInline" und "page.jsFooterInline" muss beachtet werden, das hier in den meisten Fällen die Funktionen (Feld Validierung, optische Effekte, usw.) und nicht die Bibliotheken definiert werden!
Javascript Bibliotheken manuell einbinden (die mit dem TYPO3 Core mitgeliefert werden):
page.javascriptLibs {
# prototype
Prototype = 1
# Scriptaculous
Scriptaculous = 1
# Scriptaculous Module hinzufügen
Scriptaculous.modules = dragdrop,controls
# ExtCore
ExtCore = 1
# die ExtCore Debug-Datei (unkomprimiert)
ExtCore.debug = 1
# ExtJS
ExtJs = 1
# ext-all.css
ExtJs.css = 1
# standard theme
ExtJs.theme = 1
# läd angegebenen Adapter (jquery|prototype|yui)
ExtJs.adapter = …
# QuickTips
ExtJs.quickTips = 1
# die ExtJS Debug-Datei (unkomprimiert)
ExtJs.debug = 1
}Anschließend können dann eigene Javascript's eingebunden werden, z.B.:
page.includeJSFooter.file1 = fileadmin/myjs.js
oder das einer Extension:
page.includeJS.file2 = typo3conf/ext/EXTENSIONKEY/resources/js/extension.js
oder ohne Datei:
page.includeJS.10 = TEXT
page.includeJS.10.dataWrap = var pid = {TSFE:id}; alert('pid: '+pid);

