Antworten auf deine Fragen:
Neues Thema erstellen

Geht diese jquery-Animation auch elegenater?

woffi

Universal-Dilettant

Moin,

dieser Code funktioniert und bewirkt, dass die ID "eins" (das ist ein JPG) nach 1 Sekunde Wartezeit innerhalb von 1,5 Sekunden eingeblendet wird.

<script type="text/javascript">
$(document).ready(function() {
$('#eins').delay(1000).fadeIn(1500);
});
</script>

Nachteil ist, dass ich im Style-Sheet

#eins {
display: none;
}

einfügen muss, was wiederum bei deaktiviertem JavaScript bewirkt, dass das Bild überhaupt nicht da ist.

Gibt es da nicht eine elegantere Lösung, sodass das Bild dann einfach (natürlich ohne Animation) angezeigt wird?

Gruß und Dank
woffi
 

Myhar

Hat es drauf

AW: Geht diese jquery-Animation auch elegenater?

Natürlich gibt es eine elegantere Lösung. Ich nehme einmal an, dass du nicht nur wissen wolltest, ob es so etwas gibt, sondern auch, wie das geht ;P
Diese Möglichkeit kannst du bei allen Elementen, welche du für Leute mit deaktiviertem JS anzeigen willst, verwenden.
Zuerst legst du ein Stylesheet an, welches nur die Styles für JS User beinhaltet
ZB:
HTML:
/*Im Standard Stylesheet*/
.hiddenJSClass {display:block} /*Damit wird jedes Element mit der Klasse für User ohne JS angezeigt*/

/*In dem zweiten Stylesheet (zB mit dem Namen onlyForJS.css ) */
.hiddenJSClass {display:none}/*Damit wird jedes Element mit der Klasse für User mit JS versteckt*/

Nun dazu, wie du die beiden CSS Files einbindest: Das onlyForJs.css muss nach deinem normalen CSS eingebunden werden und zwar auf folgende Weise (im Head Bereich der Seite):
HTML:
<script type="text/javascript">
            //<![CDATA[
                document.write('<link type="text/css" rel="stylesheet" href="/scripting/onlyForJs.css" media="screen, projection" />');
            //]]></script>
Mit der Methode wird das CSS mittels JS eingebunden und nur User mit JS bekommen das modifizierte CSS.
Der Nachteil ist, dass ein File mehr geladen werden muss, jedoch ist das wohl vernachlässigbar, da die CSS Files gecached werden und in der onlyForJS.css meist nicht viel drinnen steht.

L. G.
 

woffi

Universal-Dilettant

AW: Geht diese jquery-Animation auch elegenater?

Super und Danke - eigentlich hätte ich da auch selbst drauf kommen können. Das weitere File ist bei der Summe absolut vernachlässigbar.
lg
woffi
 

fexx

Aktives Mitglied

AW: Geht diese jquery-Animation auch elegenater?

oder du nimmst einfach .hide(); in deine Kette mit auf....

Code:
<script type="text/javascript">
       $(document).ready(function() {
               $('#eins').hide().delay(1000).fadeIn(1500);
       });
</script>
 

woffi

Universal-Dilettant

AW: Geht diese jquery-Animation auch elegenater?

Das ist ja noch schöner - danke, habe ich gerade realisiert, funktioniert genauso, wie ich es haben möchte.
 

Myhar

Hat es drauf

AW: Geht diese jquery-Animation auch elegenater?

Es gibt hierfür wohl noch ein paar Varianten. Jedoch ist der Nachteil an oben genannter Version, dass das Element erst versteckt wird, sobald der DOM Baum komplett geladen ist. Das heißt, es kann zu einem flacker-Effekt kommen, bei dem das Element für 1sek sichtbar ist und dann erst versteckt wird.

Bei meiner Version wird das Element versteckt, sobald das CSS geholt wurde, welches sich ja bei mehrmaligem Aufruf schon im Cache befindet. Hier sollte sich das flackern auf ein minimum reduzieren lassen, bzw. gar nicht erst auftreten.
Auch kann man mit meiner Variante schneller mehrere Objekte verstecken, mit der von fexx angesprochenen JS Lösung müsste man jedes zu versteckende Objekt erst selektieren (was bei vielen Objekten natürlich dementsprechend lange dauert)

Welche Variante man schlussendlich einbaut, bleibt einem selber überlassen. Ich wollte hier nur noch einmal die Vor- Nachteile aufzeigen.

L. G.
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Statistik des Forums

Themen
118.565
Beiträge
1.538.067
Mitglieder
67.488
Neuestes Mitglied
Andrew56524
Oben