[phpBB Debug] PHP Warning: in file [ROOT]/ext/tas2580/seourls/event/listener.php on line 213: Undefined array key "FORUM_NAME"
Background-image im Body soll per link in der Navi wechseln - REDAXO Forum
Hallo,

Wir haben in letzter Zeit festgestellt, dass die Kommunikation via Slack viel schneller und zielführender ist als ein Beitrag im Forum. Aufgrund der neuen und besseren Möglichkeiten der Kommunikation haben wir uns entschlossen das Forum nur noch als Archiv zur Verfügung zu stellen. Somit bleibt es weiterhin möglich hier nach Lösungen zu suchen. Neue Beiträge können nicht mehr erstellt werden.

Wir empfehlen, für deine Fragen/Probleme Slack zu nutzen. Dort sind viele kompetente Benutzer aktiv und beantworten jegliche Fragen, gerne auch von REDAXO-Anfängern! Slack wird von uns sehr intensiv und meistens "rund um die Uhr" benutzt :-)
Selbst einladen kannst Du dich hier: https://redaxo.org/slack/
Benutzeravatar
Rasolofo
Beiträge: 6
Registriert: 23. Okt 2010, 19:31

Background-image im Body soll per link in der Navi wechseln

23. Okt 2010, 19:48

Hallo!
Ist da Jemand der kurz erklären kann, wie man das "Background-image" im Body per link (per mouse-click) in der Navigation wechseln kann? Es soll im Template für Navigation eingebetet werden
Danke :?
____________________________
"Es gibt Zehn Arten von Menschen, die mit Redaxo-BackEnd auskennen und die, die damit nicht auskennen !?! ;-)"

Benutzeravatar
Cheffchen
Beiträge: 1809
Registriert: 3. Mär 2009, 13:51
Wohnort: Berlin
Kontaktdaten: Website

23. Okt 2010, 23:14

Hallo,

was meinst du genau, ist sehr ungenau deine Frage.

Wie das in mein "www" 2 Designs die gewechselt werden können. Das kann man natürlich einfacher machen das nur Hintergrund anders ist.
(auf der Seite Links-Oben)

Was für Links? Normale Menü (startseite/impressum/kontakt...) jede Seite anderes Hintergrundbild oder switch wie oben?
wie man das "Background-image" im Body per link
mit CSS und PHP so das die id vom Body geändert wird, ist eine Möglichkeit.

Fragen über Fragen, Möglichkeiten über Möglichkeiten :O).

Cheffchen

Benutzeravatar
Rasolofo
Beiträge: 6
Registriert: 23. Okt 2010, 19:31

24. Okt 2010, 03:23

Ach ja ich hab 'was vergessen: Body-Background-Image meine ich (Webseitenhintergrund). Und zwar mit "onmouseover" bzw. "onmouseclick" auf irgendeinem Link in meiner Navigation!

Ich hab ein Beispiel in JS gefunden. In einem einfachen HTML, wie hier unten funktioniert es.
Im META:
<script type="text/javascript">
function swapBackground(strImg) {
document.getElementById('body').style.backgroundImage = "url("+strImg+")";
}
</script>


Im BODY (Bsp. mit onmouseover):
<a href="#" onmouseover="swapBackground('hintergrund2.jpg');" onmouseout="swapBackground('Hintergrund1.jpg');">Hintergrundbild wechseln</a>

Was mich daran hindert, ist die Verkettungsoperation zweier Apostrophen (') mit REX-Variable $REX['HTDOCS_PATH'].

Im meinem BODY habe ich noch zusätzliche If-Anweisung für den Link. So soll es dann aussehen [die zwei (') hintereinander machen das Problem]:
<?PHP
if (Bedingungen) {
echo '<a href="#" onmouseover="swapBackground(' '.$REX['HTDOCS_PATH'].' hintergrund2.jpg');" onmouseover="swapBackground(' '.$REX['HTDOCS_PATH'].' hintergrund2.jpg'');"> Hintergrundbild wechseln</a>';
}
else
{
echo 'Blabla';
}
endif;
?>


Falls Du andere Möglichkeit findest dann herzl. Willkommen!

Danke im Vorraus
Rasolofo
____________________________
"Es gibt Zehn Arten von Menschen, die mit Redaxo-BackEnd auskennen und die, die damit nicht auskennen !?! ;-)"

Benutzeravatar
Cheffchen
Beiträge: 1809
Registriert: 3. Mär 2009, 13:51
Wohnort: Berlin
Kontaktdaten: Website

24. Okt 2010, 14:27

Hallo,

also bloss ein Syntax problem.
versuche mal das (ungetestet)

Code: Alles auswählen

echo "<a href='#' 
onmouseover='swapBackground(\'".$REX['HTDOCS_PATH']."hintergrund2.jpg\');'>
Hintergrundbild wechseln</a>"; 
Beim Seitenwechsel ist das aber wieder weg, also muss der User das bei jeder Seite neu klicken.

Ich finde da ein PHP Lösung besser, da wird die Seite zwar beim Bildwechsel neu geladen aber die änderungen bleibt beim ganzen Besuch bestehen.

Cheffchen

Benutzeravatar
Rasolofo
Beiträge: 6
Registriert: 23. Okt 2010, 19:31

24. Okt 2010, 17:19

Danke vielmals Cheffchen!
Ich werde deinen Vorschlag sofort ausrobieren.
Ich habe das Problem auch von alleine gelöst, indem ich per Webrowser die HTML-Ausgabe überprüft habe.

Frage: hast Du etwas Ahnung von dem Logowechsel per Menu-Links wie hier oben? Danke Dir dafür

Nun meine Lösung vom vorhin:
ES FUNKTIONIERT: Webseitenhintergrundbildwechsel

Diese Funktion im Kopfteil (head) oder in der JS-Datei gut eingebettet
function swapBackground(strImg) {
document.getElementById('body').style.backgroundImage = "url("+strImg+")";
}

"Style sheet"-Deklaration: body (entweder in Head oder separat in css). wie auch immer was drin steht, egal!
<body id=body>


Im BODY:

<body id='body'>
.
.
.

Mein Fall: Hintergrundbildwechsel innerhalb einer If-Anweisung in einem Template in PHP.
if (Bedingungen) {
echo '<a href="#" onmouseover="swapBackground(\''.$REX['HTDOCS_PATH'].'hintergrundbild1.jpg\');">'.$lev2->getName().'</a>';
}else {
Blabla
}
.
.
.
</body>


Bis dann
Rasolofo :D
____________________________
"Es gibt Zehn Arten von Menschen, die mit Redaxo-BackEnd auskennen und die, die damit nicht auskennen !?! ;-)"

Benutzeravatar
Cheffchen
Beiträge: 1809
Registriert: 3. Mär 2009, 13:51
Wohnort: Berlin
Kontaktdaten: Website

24. Okt 2010, 23:35

schuldige dein Beitrag zu verstehen ist echt nicht einfach.
Frage: hast Du etwas Ahnung von dem Logowechsel per Menu-Links wie hier oben? Danke Dir dafür
Javascript geht so, PHP ist um einiges besser.
Wo soll ich Ahnung haben beim Logowechsel?
Helfe gerne wenn ich weis wo :O).

Cheffchen

Zurück zu „Allgemeines [R3]“