Hallo,
Ist es möglich Typo-Script nur innerhalb eines bestimmten DIV-Tags auszuführen. Z.B.: <div id="typo"> [führe hier Typoscript aus] </div>
Möchte eine bestimmte Zeichenkette innerhalb des HTML-Codes ersetzen. Dies soll aber nur innerhalb eines bestimmten Bereiches der Seite erfolgen.
Grüße,
Torsten.
Ist das eine statische HTML Seite? Sprich du willst quasi TYPO3 Seiten innerhalb eines DIVs anzeigen, ähnlich wie ein Frame? Oder ist das Ganze eine TYPO3 Seite?
Grüße
Christian
Das ganze ist eine Typo3 Seite innerhalb meines Typo3-Seitenbaumes.
Habe ein Typo3-Script im Root-Setup, welches über tt_content innerhalb der ganzen Seite bestimmte Strings ersetzt. Möchte aber nur innerhalb eines bestimmten Bereichs meines Templates (am besten über ein DIV-Tag gekennzeichnet) diese String-Funktion anwenden.
Du könntest einfach in eine DIV box einen Marker setzen. Diesen Marker füllst du dann einfach per typoscript.
Kannst Du mir ein Beispiel posten?
Also innerhalb des Markers soll folgendes passieren:
(*ELEMENT* soll dann der Inhalt des DIV-Tags sein, bzw. der Inhalt ziwschen den Markern. Shytag ersetzt den String "­" durch "-<BR>", da im Firefox dieses Tag nicht richtig interpretiert wird.)
includeLibs.parseshytag = fileadmin/scripts/shyparser.php
*ELEMENT*.stdWrap.parseFunc.userFunc = user_parser->parseshytag
Benutzt du TV oder Standardtemplate?
Bei Standard würdest du ja einfach einen marker bzw. subpart innerhalb deines DIVs setzen. Ich gehe jetzt mal von einem Marker mit dem Namen BLUBB aus.
Dann kannst du das ansprechen mit z.B.
page.10.marks.BLUBB < *ELEMENT*
Aber poste doch bitte einfach mal dein gesamtes Setup und auch wenn es nichts damit zu tun hat, würde ich gerne genauer erfahren, was dieses Script macht. Das Firefox ein <br> nicht erkennt wäre mir neu... Vielleicht falschen Doktype genutzt?
Grüße
Christian
Benutze TV.
<BR> wird ja von Firefox erkannt. Nur das "& shy;" nicht. Wenn ich eine Box mit 120 Pixel habe und ein Wort Dampfschiff& shy;fahrtskapitän dort reinschreib wird es von dem Internetexplorer automatisch zwischen dem "& shy;" getrennt. Firefox hat mit dem "& shy;" Probleme.
Anmerkung: Habe bei "& shy;" ein Leerzeichen eingefügt, weil es im Posting sonst nicht angezeigt wird.
Jetzt das Setup:
[browser = netscape]
includeLibs.parseshytag = fileadmin/scripts/shyparser.php
lib.sideMenu.stdWrap.parseFunc.userFunc = user_parser->parseshytag
tt_content.stdWrap.parseFunc.userFunc = user_parser->parseshytag
[global]
In der PHP-File passiert folgendes:
class user_parser{
function parseshytag($content,$conf)
{
$content = str_replace("­", "- <BR>", $content);
return $content;
}
Problem ist, dass durch "tt_content.stdWrap.parseFunc. ..." diese PHP-Funktion zum ersetzten des "& shy;" im Falle des Netscape-Browsers auf alle Elemente innerhalb der Seite angewendet wird! Der Internet-Explorer interpretiert das "& shy;" ohnehin richtig und muss daher nur im Falle eines Netscape-Browsers manuell ersetzt werden. D.h. wenn nicht umgebrochen werden muss wird das Wort Dampfschiff& shy;fahrtskapitän als "Dampfschifffahrtskapitän" dargestellt. Nehmen wir an das Wort Dampfschifffahrtskapitän ist eine News-Überschrift. Die Überschrift wird in der Box angezeigt, muss aber umgebrochen werden. Funktioniert im IE sowieso, im Firefox wird "manuell" umgebrochen. Wenn diese Überschrift in der LIST-View nun im Content-Berich auftaucht und nicht in der Box würde bei Netscape auch im Content-Bereich mit ausreichend Platz Dampfschiff-<BR>fahrtskapitän eingefügt und umgebrochen. DAS soll nicht passieren. D.h. nur innerhalb einer Box (die nur 120px breit ist) "& shy;"ersetzen - ansonsten, falls es im content-Bereich auftaucht nicht.
Hoffe ich habe das Problem jetzt halbwegs genau beschrieben.