• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Popup Fenster ohne Javascript?!

b1zarRe

Mitglied
Hi,

ich hoffe ihr könnt mir weiterhelfen:

Ich möchte in eine Webseite ein kleines Popup einbauen, welches
im gleichen Fenster erscheinen soll. Nun stellt sich mir die Frage, ob
ich dies per Javascript realisieren sollte (-> Da ein Nutzer ja selbst
entscheiden kann ob JS an/aus ist und dann würde das Popup ja garnicht
mehr funktionieren?!).

ODER

ob ich alles per HTML/CSS realisiere, indem ich einen div baue, welcher
erscheint, wenn man ein jeweiligen button klickt und verschwindet, wenn
man in dem div auf ein "X" Button klickt? => So ein bisschen wie eine Navi,
nur halt mit Button.

Welches wäre die bessere Lösung? Oder gibt es noch eine andere?

Vielen Dank!
 
Werbung:
ob ich alles per HTML/CSS realisiere, indem ich einen div baue, welcher
erscheint, wenn man ein jeweiligen button klickt und verschwindet, wenn
man in dem div auf ein "X" Button klickt? => So ein bisschen wie eine Navi,
nur halt mit Button.

Und wie soll das aussehen?
 
Das ist momentan ja alles nur Theorie... damit
ich erstmal eine sinnige Entscheidung finde und dann
danach vorgehe...
 
Werbung:
Ich wüsste nicht, wie sich das rein über CSS lösen lassen könnte. Du kannst Deklarationen nicht in Abhängigkeit zu einem Klick auf ein (anderes) Element setzen.

Wenn du es nicht selbst mit JS umsetzen willst, gibt es für jQuery beliebig viele Lightbox-Plugins. Denen kann man meist als Quelle auch ein (verstecktes) div zuweisen.
 
Danke Euch erstmal!

Habe es jetzt über JQUERY realisiert und funktioniert :)))

Leider habe ich jetzt nun noch das Problem, wie ich die Texte
dynamisch einpflegen kann. Also, momentan wird bei Klick eines
jeden Links das Popup aufgefahren und ein LoremIpsum Text angezeigt.

Letztendlich soll es aber natürlich so funktionieren, dass bei
Klick des Links "A" Text "123" erscheinen soll und bei Klick
des Links "B" Text "456" etc. erscheinen soll.

Wie lässt sich sowas nun sinnvoll implementieren? Sollte
ich jedem Link eine Art ID-Nummer geben, und dann
im JQuery Teil abfragen, welche ID angeklickt wurde und
mir dann jeweiligen Text herholen...? Oder geht es noch einfacher?
Hat jemand diesbezüglich eine Art Tutorial oder ein Codefragment???

Vielen Dank Euch!
 
Danke Euch erstmal!



Wie lässt sich sowas nun sinnvoll implementieren? Sollte
ich jedem Link eine Art ID-Nummer geben, und dann
im JQuery Teil abfragen, welche ID angeklickt wurde und
mir dann jeweiligen Text herholen...?

Das wäre die einfachste Variante.

Code:
$(selector).click(function() {
    var id = $(this).attr('id');
    .......
})

Die Variable id könnte nun an ein if-else oder switch-case Konstrukt weitergereicht werden. Oder du übergibst sie als Parameter an einen Ajax-Request und schickst sie an den Server. In dem Fall kannst du auch mit PHP und MySQL arbeiten.
 
Werbung:
Danke,
ich habe es jetzt so hinbekommen:

HTML:
$('.lightbox').click(function(){
<!-- TEXTE LIGHTBOX -->
var id = $(this).attr('id');

if(id==1) {
$(".boxtext").html("ein Text");
} else if(id==2) {
$(".boxtext").html("ein anderer Text");
}
<!-- TEXTE LIGHTBOX ENDE-->
});
(...)

<!-- TEXTE LIGHTBOX LINKS -->
<li><a href="#" class="lightbox" id="1">Link 1</a><p></li>
<li><a href="#" class="lightbox" id="2">Link 2</a><p></li>
<!-- TEXTE LIGHTBOX LINKS ENDE -->
(...)
<div class="boxtext"></div>

Nun ist aber mein Problem, dass ich auch Bilder oder Links (also unterstrichen), oder
fett Markierungen etc. machen möchte... Mit dem Befehl: $(".boxtext").html("ein anderer Text");
stellt er mir lediglich einen "Normalen" Plaintext in den Divcontainer... wie kann ich es
erzielen, dass ich diesen wie gewohnt html/css mässig bearbeiten kann?!


EDIT: Schon gut es geht :))) war wohl irgend ein kleiner Syntax oder Klammerfehler bei mir drin!
 
Zuletzt bearbeitet:
Werbung:
Oder du hängst an jeden ID-Namen eine Zahl an und spielst etwas mit den Strings.

Code:
var id="id_50";
var idNr = id.substr(3);
var div = $("id_" + idNr)
var nochEineId = $(div).attr("id");
..........
 
Zurück
Oben