Zum Inhalt springen

Body- und Head-TAG

Erstellt am 1. Januar 2006 · 1 Antwort · letzte Antwort am 4. Januar 2006

Tags: JavaScript & AJAX, Frage

eiten ·

Hallo und ein Gutes, Neues Jahr!

Ich habe folgendes Problem: in einer Extension verwende ich relativ viel JavaScript. Nun sollte zwischen den <head>-Tags das Java-Script eingebunden werden. Dies ist ja zwar mittels TS möglich, ist es aber auch möglich, im PHP-Code etwas in den Head zu schreiben?

Und: Auch den Body-Tag kann man im TS verändern, soviel ich gesehen habe aber nur als ganzes setzen. Kann ich im PHP-Coder der Extension zusätzliches in den <body>-Tag schreiben? Konkret wäre das was in der Art <body bonload="js_gall_cache(id32);" b=""> oder so...

Vielen Dank, Edi

Spyker ·

erst einmal kann ich dir nur empfehlen Bilder nicht vorzuladen. Ist nicht grade sinn der Barrierefreiheit...

Dann gehört Javascript im normalfall nicht in den head sondern in js, dateien , damit die Seite schneller und schlanker wird/bleibt. Hiermit kannst du in deiner Extension dann in den head zusätzliche dateien einbinden:

   // Initzialisiert eine Javascript oder css Datei in Typo3
   function initHeaderFile($file, $type, $title='Normal', $media=false, $overwrite=true){
      $id = 'file_'.substr(md5($file),0,15);
      $in = ($type == 'js')?'<script src="'.$file.'"></script>':'<link rel="stylesheet" type="text/css" href="'.$file.'" title="'.$title.'"'.(($media)?' media="'.$media.'"':'').' />';

      if($overwrite OR !isset($GLOBALS['TSFE']->additionalHeaderData[$id])){
         $GLOBALS['TSFE']->additionalHeaderData[$id] = $in;
         return true;
      } else
         return false;
   } // function - initHeaderFile

beispiel

$this->initHeaderFile('odern/ordner/datei.js', 'js');