[TYPO3-german] pageRenderer() -> inlineJS -> Formatierung
Stefan Frömken
firma at sfroemken.de
Mon Oct 8 09:03:10 CEST 2012
Moin Robert,
hab Dir doch gerade 3 Zeilen geschickt?!?! Naja...dann mal etwas mehr
mit einem Beispielscript aus vergangenen Tagen:
public function getHeaderJs() {
$inlineJs = '
$(document).ready(function() {
(function basic_pie(container) {
var graph;
graph = Flotr.draw(container, ' . $this->test() . ', {
HtmlText: false,
grid: {
verticalLines: false,
horizontalLines: false
},
xaxis: {
showLabels: false
},
yaxis: {
showLabels: false
},
pie: {
show: true,
explode: 6
},
mouse: {
track: true
},
legend: {
position: "se",
backgroundColor: "#D2E8FF"
}
});
})(document.getElementById("editor-render-0"));
});
';
return $inlineJs;
}
Klappt super und schaut auch im Quellcode supi aus.
Stefan
Am 08.10.2012 08:48, schrieb Robert Wildling:
> Hallo, Stefan,
>
> Danke für dein Feedback! Aber ganz versteh ich den Gedankengang leider
> nicht. Wie sollte ich zB folgende Zeile in eine Funktion bringen?
>
> $inlineJS .= ' },';
>
> Kannst du mir bitte die ersten 3,4 Zeilen so notieren, wie du es mir
> empfiehlst?
>
> (Die Newslist hier macht ja recht Zeilenumbrüche, deswegen ist hier der
> Code unleserlich; im PHP-File ist das allerdings sehr gut lesbar,
> zumindest für mein Verständnis, das derzeit nur diese Lösung kennt... )
>
> Danke! Gruß, Robert
>
>
>
>> Am 05.10.2012 17:42, schrieb Robert Wildling:
>>> Hallo,
>>>
>>> Ich hab mir die Mühe gemacht, in einer EXT (pi_base) das auszugebende
>>> inlineJS möglichst schön zu formatieren alá
>>>
>>> $inlineJS .= ' },';
>>> $inlineJS .= ' ], {';
>>> $inlineJS .= ' playlistOptions: {\r';
>>> $inlineJS .= ' autoPlay : ' . $autoPlay . ',\r';
>>> // Boolean
>>> $inlineJS .= ' loopOnPrevious : ' . $loopOnPrevious .
>>> ',\r'; // Boolean
>
>>> $GLOBALS['TSFE']->getPageRenderer()->addJsFooterInlineCode($name,$inlineJS);
>>>
>
>>>
>>> Und weiß vielleicht noch jemand, wo genau diese Funktion definiert wird?
>>> Meine Suche findet immer nur ein getPageRenderer()...
>
>>
>> Definier dein JS mal anders:
>>
>> $inlineJs = '
>> function irgendwas() {
>> alert("TYPO3 ist cool");
>> }
>> ';
>>
>> Auf diese Weise kann man dann auch den JavaScript-Teil innerhalb Deiner
>> Extension viel besser lesen und jedes Enter wird automatisch in einen
>> Umbruch "konvertiert".
>
More information about the TYPO3-german
mailing list