Was ist jQuery?
Es ist eine Vereinfachung von JavaScript durch ein sogenanntes Framework, welches uns lästige Routinearbeit beim Programmieren abnimmt und einen einfachen Zugang zu schwer nutzbaren JavaScript-Methoden bietet.
JavaScript mit & ohne jQuery!
Für den Einstieg in das Thema möchte ich ein Beispiel mit JavaScript und den selben Effekt via jQuery zeigen.
JavaScript: (JavaScript_test1.html)
<html>
<head>
<title>JavaScript</title>
<style type="text/css">
.green { color: #009933; }
</style>
<script tyle="text/javascript">
window.onload = function() {
var elements = document.getElementById("box").getElementsByTagName("p");
for (var i = 0; i < elements.length; i++) {
if (elements[i].firstChild.data == "Zweiter Absatz") {
elements[i].className = "green";
}
}
}
</script>
</head>
<body>
<div id="box">
<p>Erster Absatz</p>
<p>Zweiter Absatz</p>
<p>Dritter Absatz</p>
</div>
</body>
</html>
jQuery: (jQuery_test1.html)
<html>
<head>
<title>JavaScript mit und ohne jQuery!</title>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
$("p:contains('Zweiter Absatz')").css({ 'color' : '#009933' });
});
</script>
</head>
<body>
<div id="box">
<p>Erster Absatz</p>
<p>Zweiter Absatz</p>
<p>Dritter Absatz</p>
</div>
</body>
</html>
Wie man an diesem Beispiel erkennen kann, sind die “Selektoren” ein sehr wichtiger / umfangreicher Teil von jQuery.
jQuery-Selektoren
Als nächstes möchte ich einige jQuery-Selektoren und Methoden zum Auswählen von HTML-Elementen zeigen. Doch zuerst sollten wir die selben Werkzeuge zum ausführen & debuggen von JavaScript (jQuery) nutzen. Da JavaScript direkt im Browser kompiliert wird, könnten wir die Code-Zeilen auch direkt im Browser ausführen: Firefox + Firebug oder z.B. hier html5snippet.net


Selektiert alle HTML-Elemente von einem bestimmten Typ. -> z.B.: $(“p”)
<html>
<head>
<title>JavaScript mit und ohne jQuery!</title>
<style type="text/css">
.green { color: #009933; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
$("p").addClass("green");
});
</script>
</head>
<body>
<div>
<p>Erster Absatz</p>
<p>Zweiter Absatz</p>
<p>Dritter Absatz</p>
</div>
</body>
</html>
Selektiert HTML-Elemente mit einer bestimmten ID. -> z.B.: $(“#box”)
<html>
<head>
<title>JavaScript mit und ohne jQuery!</title>
<style type="text/css">
.green { color: #009933; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
$("#box").addClass("green");
});
</script>
</head>
<body>
<div id="box">
<p>Erster Absatz</p>
<p>Zweiter Absatz</p>
<p>Dritter Absatz</p>
</div>
</body>
</html>
PS: ID’s müssen auf einer HTML-Seite einmalig sein!
Selektiert HTML-Elemente mit einer bestimmten CSS-Klasse. -> z.B.: $(“.box”)
<html>
<head>
<title>JavaScript mit und ohne jQuery!</title>
<style type="text/css">
.green { color: #009933; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
$("div div .box").addClass("green");
});
</script>
</head>
<body>
<div class="box">
<p>Erster Absatz</p>
<p>Zweiter Absatz</p>
<p>Dritter Absatz</p>
</div>
<div>
<div>
<div class="box">
<p>Erster Absatz</p>
<p>Zweiter Absatz</p>
<p>Dritter Absatz</p>
</div>
</div>
</div>
</body>
</html>
Hier wurde die Auswahl noch einmal via HTML-Tags (div) eingeschränkt.
Selektiert HTML-Elemente und die Auswahl weiterer Selektoren. -> z.B.: $(“div + .box”)
<html>
<head>
<title>JavaScript mit und ohne jQuery!</title>
<style type="text/css">
.green { color: #009933; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
$("div + .box").addClass("green");
});
</script>
</head>
<body>
<div class="box">
<p>Erster Absatz</p>
<p>Zweiter Absatz</p>
<p>Dritter Absatz</p>
</div>
<div>
<div>
<div class="box">
<p>Erster Absatz</p>
<p>Zweiter Absatz</p>
<p>Dritter Absatz</p>
</div>
</div>
</div>
<div class="box">
<p>Erster Absatz</p>
<p>Zweiter Absatz</p>
<p>Dritter Absatz</p>
</div>
</body>
</html>
Selektiert alle HTML-Elemente X, die Kindknoten eines Elements Y sind. -> $(“X > Y”) -> z.B: $(“div > p”)
<html>
<head>
<title>JavaScript mit und ohne jQuery!</title>
<style type="text/css">
.green { color: #009933; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
$("div > p").addClass("green");
});
</script>
</head>
<body>
<div>
<span>
<p>Erster Absatz</p>
<p>Zweiter Absatz</p>
<p>Dritter Absatz</p>
</span>
</div>
<div>
<p>Erster Absatz</p>
<p>Zweiter Absatz</p>
<p>Dritter Absatz</p>
</div>
</body>
</html>
Selektiert alle folgenden Geschwisterknoten eines Elements X, die den Typ Y besitzen. -> $(“X ~ Y”) -> z.B: $(“#start ~ p”)
<html>
<head>
<title>JavaScript mit und ohne jQuery!</title>
<style type="text/css">
.green { color: #009933; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
$("#start ~ p").addClass("green");
});
</script>
</head>
<body>
<div>
<p id="start">Erster Absatz</p>
<p>Zweiter Absatz<p>
<div>
<p>Dritter Absatz<p>
</div>
<p>Vierter Absatz</p>
</div>
</body>
</html>
Selektiert die Kombination aus allen durch die Selektoren gewählten Knoten. -> z.B: $(“#p1, #p2, #p3”)
<html>
<head>
<title>JavaScript mit und ohne jQuery!</title>
<style type="text/css">
.green { color: #009933; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
$("#p1, #p2, #p3").addClass("green");
});
</script>
</head>
<body>
<div id="box">
<p id="p1">Erster Absatz</p>
<p id="p2">Zweiter Absatz</p>
<p id="p3">Dritter Absatz</p>
</div>
</body>
</html>
Selektiert bestimmte HTML-Kind-Tags. -> z.B: $(“#box”).find(“p”)
<html>
<head>
<title>JavaScript mit und ohne jQuery!</title>
<style type="text/css">
.green { color: #009933; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
$("#box").find("p").addClass("green");
});
</script>
</head>
<body>
<div id="box">
<p>Erster Absatz</p>
<span>Zweiter Absatz</span>
<p>Dritter Absatz</p>
</div>
</body>
</html>
<html>
<head>
<title>JavaScript mit und ohne jQuery!</title>
<style type="text/css">
.green { color: #009933; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
$("#box").find("*").addClass("green");
});
</script>
</head>
<body>
<div id="box">
<p>Erster Absatz</p>
<span>Zweiter Absatz</span>
<p>Dritter Absatz</p>
</div>
</body>
</html>
Selektiert über Attribute. -> z.B: $(“div[id]”)
<html>
<head>
<title>JavaScript mit und ohne jQuery!</title>
<style type="text/css">
.green { color: #009933; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
$("div[id]").addClass("green");
});
</script>
</head>
<body>
<div id="box">
<p>Erster Absatz</p>
<span>Zweiter Absatz</span>
<p>Dritter Absatz</p>
</div>
<div>
<p>Erster Absatz</p>
<span>Zweiter Absatz</span>
<p>Dritter Absatz</p>
</div>
</body>
</html>
Selektiert über Attribute und dessen Werte. -> z.B: $(“div[id=’box’]”)
<html>
<head>
<title>JavaScript mit und ohne jQuery!</title>
<style type="text/css">
.green { color: #009933; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
$("div[id='box']").addClass("green");
});
</script>
</head>
<body>
<div id="box1">
<p>Erster Absatz</p>
<span>Zweiter Absatz</span>
<p>Dritter Absatz</p>
</div>
<div id="box">
<p>Erster Absatz</p>
<span>Zweiter Absatz</span>
<p>Dritter Absatz</p>
</div>
<div>
<p>Erster Absatz</p>
<span>Zweiter Absatz</span>
<p>Dritter Absatz</p>
</div>
</body>
</html>
Selektiert über HTML-Tags und dessen Anordnung in der HTML-Struktur. -> z.B: $(“div:first”)
<html>
<head>
<title>JavaScript mit und ohne jQuery!</title>
<style type="text/css">
.green { color: #009933; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
$("div:first").addClass("green");
});
</script>
</head>
<body>
<div>
<p>Erster Absatz</p>
<span>Zweiter Absatz</span>
<p>Dritter Absatz</p>
</div>
<div>
<p>Erster Absatz</p>
<span>Zweiter Absatz</span>
<p>Dritter Absatz</p>
</div>
<div>
<p>Erster Absatz</p>
<span>Zweiter Absatz</span>
<p>Dritter Absatz</p>
</div>
</body>
</html>
<html>
<head>
<title>JavaScript mit und ohne jQuery!</title>
<style type="text/css">
.green { color: #009933; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
$("div:last").addClass("green");
});
</script>
</head>
<body>
<div>
<p>Erster Absatz</p>
<span>Zweiter Absatz</span>
<p>Dritter Absatz</p>
</div>
<div>
<p>Erster Absatz</p>
<span>Zweiter Absatz</span>
<p>Dritter Absatz</p>
</div>
<div>
<p>Erster Absatz</p>
<span>Zweiter Absatz</span>
<p>Dritter Absatz</p>
</div>
</body>
</html>
Selektiert alle Elemente mit geradem Index innerhalb der aktuellen Auswahl. (0 ist even) -> z.B: $(“div p:even”)
<html>
<head>
<title>JavaScript mit und ohne jQuery!</title>
<style type="text/css">
.green { color: #009933; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
$("div p:even").addClass("green");
});
</script>
</head>
<body>
<div>
<p>Erster Absatz</p>
<p>Zweiter Absatz</p>
<p>Dritter Absatz</p>
<p>Vierter Absatz</p>
</div>
<div>
<p>Erster Absatz</p>
<p>Zweiter Absatz</p>
<p>Dritter Absatz</p>
<p>Vierter Absatz</p>
</div>
<div>
<p>Erster Absatz</p>
<p>Zweiter Absatz</p>
<p>Dritter Absatz</p>
<p>Vierter Absatz</p>
</div>
</body>
</html>
Selektiert alle Elemente mit ungeradem Index innerhalb der aktuellen Auswahl. (1 ist odd) -> z.B: $(“div p:odd”)
<html>
<head>
<title>JavaScript mit und ohne jQuery!</title>
<style type="text/css">
.green { color: #009933; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
$("div p:odd").addClass("green");
});
</script>
</head>
<body>
<div>
<p>Erster Absatz</p>
<p>Zweiter Absatz</p>
<p>Dritter Absatz</p>
<p>Vierter Absatz</p>
</div>
<div>
<p>Erster Absatz</p>
<p>Zweiter Absatz</p>
<p>Dritter Absatz</p>
<p>Vierter Absatz</p>
</div>
<div>
<p>Erster Absatz</p>
<p>Zweiter Absatz</p>
<p>Dritter Absatz</p>
<p>Vierter Absatz</p>
</div>
</body>
</html>
Selektiert alle Elemente die nicht zutreffen. -> z.B: $(“div:not(:last)”)
<html>
<head>
<title>JavaScript mit und ohne jQuery!</title>
<style type="text/css">
.green { color: #009933; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
$("div:not(:last)").addClass("green");
});
</script>
</head>
<body>
<div>
<p>Erster Absatz</p>
<span>Zweiter Absatz</span>
<p>Dritter Absatz</p>
</div>
<div>
<p>Erster Absatz</p>
<span>Zweiter Absatz</span>
<p>Dritter Absatz</p>
</div>
<div>
<p>Erster Absatz</p>
<span>Zweiter Absatz</span>
<p>Dritter Absatz</p>
</div>
</body>
Selektiert Elemente, die innerhalb der aktuellen Auswahl einen bestimmten Index haben. -> z.B: $(“div p:eq(1)”)
<html>
<head>
<title>JavaScript mit und ohne jQuery!</title>
<style type="text/css">
.green { color: #009933; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
$("div p:eq(1)").addClass("green");
});
</script>
</head>
<body>
<div>
<p>Erster Absatz</p>
<span>Zweiter Absatz</span>
<p>Dritter Absatz</p>
</div>
<div>
<p>Erster Absatz</p>
<span>Zweiter Absatz</span>
<p>Dritter Absatz</p>
</div>
<div>
<p>Erster Absatz</p>
<span>Zweiter Absatz</span>
<p>Dritter Absatz</p>
</div>
</body>
Selektiert alle Elemente, die innerhalb der aktuellen Auswahl einen bestimmten größeren Index haben. -> z.B: $(“div p:gt(1)”)
<html>
<head>
<title>JavaScript mit und ohne jQuery!</title>
<style type="text/css">
.green { color: #009933; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
$("div p:gt(1)").addClass("green");
});
</script>
</head>
<body>
<div>
<p>Erster Absatz</p>
<span>Zweiter Absatz</span>
<p>Dritter Absatz</p>
</div>
<div>
<p>Erster Absatz</p>
<span>Zweiter Absatz</span>
<p>Dritter Absatz</p>
</div>
<div>
<p>Erster Absatz</p>
<span>Zweiter Absatz</span>
<p>Dritter Absatz</p>
</div>
</body>
Selektiert alle Elemente, die innerhalb der aktuellen Auswahl einen bestimmten kleineren Index haben. -> z.B: $(“div p:lt(1)”)
<html>
<head>
<title>JavaScript mit und ohne jQuery!</title>
<style type="text/css">
.green { color: #009933; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
$("div p:lt(1)").addClass("green");
});
</script>
</head>
<body>
<div>
<p>Erster Absatz</p>
<span>Zweiter Absatz</span>
<p>Dritter Absatz</p>
</div>
<div>
<p>Erster Absatz</p>
<span>Zweiter Absatz</span>
<p>Dritter Absatz</p>
</div>
<div>
<p>Erster Absatz</p>
<span>Zweiter Absatz</span>
<p>Dritter Absatz</p>
</div>
</body>
Selektiert alle Elemente, die sich innerhalb der aktuellen Auswahl “bewegen”. -> z.B: $(“div p:animated”)
<html>
<head>
<title>JavaScript mit und ohne jQuery!</title>
<style type="text/css">
.green { color: #009933; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
function run() {
$("#test").slideToggle("slow",run);
}
run();
$("div p:animated").addClass("green");
});
</script>
</head>
<body>
<div>
<p id="test">Erster Absatz</p>
<span>Zweiter Absatz</span>
<p>Dritter Absatz</p>
</div>
</body>
Selektiert alle Elemente, die mindestens ein Element enthalten, auf die der Selektor zutrifft. -> z.B: $(“div:has(‘span’)”)
<html>
<head>
<title>JavaScript mit und ohne jQuery!</title>
<style type="text/css">
.green { color: #009933; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
$("div:has('span')").addClass("green");
});
</script>
</head>
<body>
<div>
<p>Erster Absatz</p>
<span>Zweiter Absatz</span>
<p>Dritter Absatz</p>
</div>
<div>
<p>Erster Absatz</p>
<p>Zweiter Absatz</p>
<p>Dritter Absatz</p>
</div>
</body>
Selektiert alle Elemente, die Elternelement eines anderen Knotens sind. (also sowohl von Element- als auch Textknoten) -> z.B: $(“p:parent”)
<html>
<head>
<title>JavaScript mit und ohne jQuery!</title>
<style type="text/css">
.green { color: #009933; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
$("p:parent").addClass("green");
});
</script>
</head>
<body>
<div>
<p>Erster Absatz</p>
<p></p>
<p>Zweiter Absatz</p>
</div>
</body>
Selektiert alle Elemente, die über ein bestimmtes Attribut verfügen. -> z.B: $(“[name]”)
<html>
<head>
<title>JavaScript mit und ohne jQuery!</title>
<style type="text/css">
.green { color: #009933; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
$("[name]").addClass("green");
});
</script>
</head>
<body>
<div>
<p name="Erster_Absatz">Erster Absatz</p>
<span name="Zweiter_Absatz">Zweiter Absatz</span>
<p name="Dritter_Absatz">Dritter Absatz</p>
</div>
<div>
<p>Erster Absatz</p>
<p>Zweiter Absatz</p>
<p>Dritter Absatz</p>
</div>
</body>
Selektiert alle Elemente, die über ein bestimmtes Attribut mit einem bestimmten Wert verfügen. -> z.B: $(“span[name=’Zweiter_Absatz’]”)
<html>
<head>
<title>JavaScript mit und ohne jQuery!</title>
<style type="text/css">
.green { color: #009933; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
$("span[name='Zweiter_Absatz']").addClass("green");
});
</script>
</head>
<body>
<div>
<p name="Erster_Absatz">Erster Absatz</p>
<span name="Zweiter_Absatz">Zweiter Absatz</span>
<p name="Dritter_Absatz">Dritter Absatz</p>
</div>
<div>
<p>Erster Absatz</p>
<p>Zweiter Absatz</p>
<p>Dritter Absatz</p>
</div>
</body>
Selektiert ein Element, wenn das Attribut einen bestimmten Wert, oder den bestimmten Wert mit einem “Bindestrich” abgetrennten String folgt -> z.B: $(“p[name|=’Absatz’]”)
<html>
<head>
<title>JavaScript mit und ohne jQuery!</title>
<style type="text/css">
.green { color: #009933; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
$("p[name|='Absatz']").addClass("green");
});
</script>
</head>
<body>
<div>
<p name="Absatz-Erster">Erster Absatz</p>
<p name="AbsatzZweiter">Zweiter Absatz</p>
<p name="Absatz_Dritter">Dritter Absatz</p>
<p name="Absatz-Vierter">Vierter Absatz</p>
</div>
</body>
Selektiert ein Element, wenn der Wert des benannten Attributs den übergebenen String als Substring enthält. -> z.B: $(“p[name*=’Absatz’]”)
<html>
<head>
<title>JavaScript mit und ohne jQuery!</title>
<style type="text/css">
.green { color: #009933; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
$("p[name*='Absatz']").addClass("green");
});
</script>
</head>
<body>
<div>
<p name="Absatz-Erster">Erster Absatz</p>
<p name="AbsatzZweiter">Zweiter Absatz</p>
<p name="Absatz_Dritter">Dritter Absatz</p>
<p name="Absatz-Vierter">Vierter Absatz</p>
</div>
</body>
Selektiert ein Element, wenn der Wert des benannten Attributs durch Leerzeichen abgetrennten Teilwert des benannten Attributes oder dem vollständigen Wert entspricht. -> z.B: $(“p[name~=’Absatz’]”)
<html>
<head>
<title>JavaScript mit und ohne jQuery!</title>
<style type="text/css">
.green { color: #009933; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
$("p[name~='Absatz']").addClass("green");
});
</script>
</head>
<body>
<div>
<p name="Absatz Erster">Erster Absatz</p>
<p name="AbsatzZweiter">Zweiter Absatz</p>
<p name="Absatz_Dritter">Dritter Absatz</p>
<p name="Absatz Vierter">Vierter Absatz</p>
</div>
</body>
Selektiert alle Elemente, die nicht einem bestimmten Attribut entsprechen. -> z.B: $(“p[name!=’Absatz’]”)
<html>
<head>
<title>JavaScript mit und ohne jQuery!</title>
<style type="text/css">
.green { color: #009933; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
$("p[name!='Absatz']").addClass("green");
});
</script>
</head>
<body>
<div>
<p name="Absatz">Erster Absatz</p>
<p name="AbsatzZweiter">Zweiter Absatz</p>
<p name="Absatz_Dritter">Dritter Absatz</p>
<p name="Absatz Vierter">Vierter Absatz</p>
</div>
</body>
Selektiert alle Elemente, die mit einem bestimmten Attribut beginnen. -> z.B: $(“p[name^=’Absatz’]”)
<html>
<head>
<title>JavaScript mit und ohne jQuery!</title>
<style type="text/css">
.green { color: #009933; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
$("p[name^='Absatz']").addClass("green");
});
</script>
</head>
<body>
<div>
<p name="Erster_Absatz">Erster Absatz</p>
<p name="AbsatzZweiter">Zweiter Absatz</p>
<p name="Absatz_Dritter">Dritter Absatz</p>
<p name="VierterAbsatz">Vierter Absatz</p>
</div>
</body>
Selektiert alle Knoten, die der erste (letzte) Kindknoten ihres Elternelements sind. -> z.B: $(“p[name^=’Absatz’]”)
<html>
<head>
<title>JavaScript mit und ohne jQuery!</title>
<style type="text/css">
.green { color: #009933; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
$("p:first-child, p:last-child").addClass("green");
});
</script>
</head>
<body>
<div>
<p>Erster Absatz</p>
<span>Zweiter Absatz</span>
<p>Dritter Absatz</p>
</div>
<div>
<p>Erster Absatz</p>
<p>Zweiter Absatz</p>
<p>Dritter Absatz</p>
</div>
</body>
Erzeugt ein neues jQuery-Objekt aus dem unmittelbar folgendem Geschwisterknoten der Elemente der aktuellen Auswahl. -> z.B: $(“p”).next(‘span’)
<html>
<head>
<title>JavaScript mit und ohne jQuery!</title>
<style type="text/css">
.green { color: #009933; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
$("p").next('span').addClass("green");
});
</script>
</head>
<body>
<div>
<p>Erster Absatz</p>
<span>Zweiter Absatz</span>
<p>Dritter Absatz</p>
</div>
<div>
<p>Erster Absatz</p>
<p>Zweiter Absatz</p>
<p>Dritter Absatz</p>
</div>
</body>
<html>
<head>
<title>JavaScript mit und ohne jQuery!</title>
<style type="text/css">
.green { color: #009933; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
$("span").next().addClass("green");
});
</script>
</head>
<body>
<div>
<p>Erster Absatz</p>
<span>Zweiter Absatz</span>
<p>Dritter Absatz</p>
</div>
</body>
Holt die Kindelemente jedes Elements der Auswahl. -> z.B: $(“div”).children()
<html>
<head>
<title>JavaScript mit und ohne jQuery!</title>
<style type="text/css">
.green { color: #009933; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
$("div").children().addClass("green");
});
</script>
</head>
<body>
<div>
<p>Erster Absatz</p>
<span>Zweiter Absatz</span>
<p>Dritter Absatz</p>
</div>
<div>
<p>Erster Absatz</p>
<p>Zweiter Absatz</p>
<p>Dritter Absatz</p>
</div>
</body>
Erzeugt eine neue Auswahl aus den Elternknoten jedes Elements der aktuellen Auswahl. -> z.B: $(“span”).parent()
<html>
<head>
<title>JavaScript mit und ohne jQuery!</title>
<style type="text/css">
.green { color: #009933; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
$("span").parent().addClass("green");
});
</script>
</head>
<body>
<div>
<p>Erster Absatz</p>
<span>Zweiter Absatz</span>
<p>Dritter Absatz</p>
</div>
<div>
<p>Erster Absatz</p>
<p>Zweiter Absatz</p>
<p>Dritter Absatz</p>
</div>
</body>
Erzeugt ein neues jQuery-Objekt aus den unmittelbar vorherigen Geschwisterknoten des Elemente der aktuellen Auswahl. -> z.B: $(“span”).prev()
<html>
<head>
<title>JavaScript mit und ohne jQuery!</title>
<style type="text/css">
.green { color: #009933; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
$("span").prev().addClass("green");
});
</script>
</head>
<body>
<div>
<p>Erster Absatz</p>
<span>Zweiter Absatz</span>
<p>Dritter Absatz</p>
</div>
</body>
Erzeugt ein neues jQuery-Objekt aus allen folgenden Geschwisterknoten der Elemente der aktuellen Auswahl. -> z.B: $(“p”).nextAll()
<html>
<head>
<title>JavaScript mit und ohne jQuery!</title>
<style type="text/css">
.green { color: #009933; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
$("p").nextAll().addClass("green");
});
</script>
</head>
<body>
<div>
<p>Erster Absatz</p>
<span>Zweiter Absatz</span>
<p>Dritter Absatz</p>
</div>
</body>
Erzeugt ein neues jQuery-Objekt aus allen vorherigen Geschwisterknoten der Elemente der aktuellen Auswahl. -> z.B: $(“p”).prevAll()
<html>
<head>
<title>JavaScript mit und ohne jQuery!</title>
<style type="text/css">
.green { color: #009933; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
$("p").prevAll().addClass("green");
});
</script>
</head>
<body>
<div>
<p>Erster Absatz</p>
<span>Zweiter Absatz</span>
<p>Dritter Absatz</p>
</div>
</body>
Bildet eine Auswahl aus allen Geschwisterknoten der Elemente der aktuellen Auswahl. -> z.B: $(“span”).siblings()
<html>
<head>
<title>JavaScript mit und ohne jQuery!</title>
<style type="text/css">
.green { color: #009933; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
$("span").siblings().addClass("green");
});
</script>
</head>
<body>
<div>
<p>Erster Absatz</p>
<span>Zweiter Absatz</span>
<p>Dritter Absatz</p>
<p>Vierter Absatz</p>
</div>
</body>
<html>
<head>
<title>JavaScript mit und ohne jQuery!</title>
<style type="text/css">
.green { color: #009933; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
$("span").siblings().add("span").addClass("green");
});
</script>
</head>
<body>
<div>
<p>Erster Absatz</p>
<span>Zweiter Absatz</span>
<p>Dritter Absatz</p>
<p>Vierter Absatz</p>
</div>
</body>
Bildet auf der Decendant-Achse der Elemente der aktuellen Auswahl eine neue Auswahl aus Elementen, die dem angegebenen Selektor entsprechen. -> z.B: $(“div p”).filter(‘:contains(Erster Absatz)’)
<html>
<head>
<title>JavaScript mit und ohne jQuery!</title>
<style type="text/css">
.green { color: #009933; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
$("div p").filter(':contains(Erster Absatz)').addClass("green");
});
</script>
</head>
<body>
<div>
<p>Erster Absatz</p>
<span>Zweiter Absatz</span>
<p>Dritter Absatz</p>
<p>Vierter Absatz</p>
</div>
</body>
Bildet auf der Decendant-Achse der Elemente der aktuellen Auswahl eine neue Auswahl aus Elementen, die dem angegebenen Selektor nicht entsprechen. -> z.B: $(“div p”).not(‘:contains(Erster Absatz)’)
<html>
<head>
<title>JavaScript mit und ohne jQuery!</title>
<style type="text/css">
.green { color: #009933; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
$("div p").not(':contains(Erster Absatz)').addClass("green");
});
</script>
</head>
<body>
<div>
<p>Erster Absatz</p>
<span>Zweiter Absatz</span>
<p>Dritter Absatz</p>
<p>Vierter Absatz</p>
</div>
</body>
<html>
<head>
<title>JavaScript mit und ohne jQuery!</title>
<style type="text/css">
.green { color: #009933; }
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script>
$(document).ready(function() {
var auswahl = $("div p");
auswahl.clone().appendTo('#test');
auswahl.not(':contains(Erster Absatz)').addClass("green").end().css({ 'color' : 'red', 'background-color' : 'black' }).last().css({ 'color' : 'yellow'});
});
</script>
</head>
<body>
<div>
<p>Erster Absatz</p>
<span>Zweiter Absatz</span>
<p>Dritter Absatz</p>
<p>Vierter Absatz</p>
</div>
<br>
<div id="test"></div>
</body>
jQuery-Beispiel
Zum Schluss möchte ich noch ein einfaches Beispiel mit Selektoren zeigen …
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
<title>jQuery-Selektoren | Beispiel</title>
<script src="http://code.jquery.com/jquery-latest.js"></script>
</head>
<body>
<h1>TEST: JPEG + PNG</h1>
<div class="pic_all" style="float: left; overflow: hidden; width: 85px; height: 54px; margin: 0 3px 3px 0; text-align: center; border: 1px solid #ffffff;">
<img src="SUCKUP_PNG.png" alt="PNG: Original > 10 KB" height="54">
</div>
<div class="pic_all" style="float: left; overflow: hidden; width: 85px; height: 54px; margin: 0 3px 3px 0; text-align: center; border: 1px solid #ffffff;">
<img src="SUCKUP_PNG_punypng.png" alt="PNG: Optimized > 9 KB" height="54">
</div>
<div class="pic_all" style="float: left; overflow: hidden; width: 85px; height: 54px; margin: 0 3px 3px 0; text-align: center; border: 1px solid #ffffff;">
<img src="SUCKUP_JPEG_100.jpg" alt="JPEG: 100% Qualität > 27 KB" height="54">
</div>
<div class="pic_all" style="float: left; overflow: hidden; width: 85px; height: 54px; margin: 0 3px 3px 0; text-align: center; border: 1px solid #ffffff;">
<img src="SUCKUP_JPEG_80.jpg" alt="JPEG: 80% Qualität > 9 KB" height="54">
</div>
<div class="pic_all" style="float: left; overflow: hidden; width: 85px; height: 54px; margin: 0 3px 3px 0; text-align: center; border: 1px solid #ffffff;">
<img src="SUCKUP_JPEG_60.jpg" alt="JPEG: (60% Qualität > 7 KB" height="54">
</div>
<br clear:both><div style="float:left">
<img style="margin-top: 50px; margin-left: -450px;" id="refMain" src=""><br>
<div style="width: 420px; margin-left: -450px;" id="imageText"></div>
</div>
<script type="text/javascript">
$('div.pic_all').css({ 'border-color' : '#ffffff', '-moz-opacity' :'0.4' });
$(document).ready(function() {
$('div.pic_all').each(function() {
$(this).mouseenter(function() {
$(this).css('border-color', '#EE398C').css('-moz-opacity', '1');
$('div.pic_all').css({ 'border-color' : '#ffffff', '-moz-opacity' :'0.4' });
$(this).css('border-color', '#EE398C').css('-moz-opacity', '1');
var src_new = $(this).find('img').attr('src');
$('#refMain').attr('src', src_new);
var text_new = $(this).find('img').attr('alt');
$('#imageText').html(text_new);
});
$(this).mouseleave(function() {
$(this).css('border-color', '#ffffff').css('-moz-opacity', '0.4');
if ($(this).find('img').attr('src') == $('#refMain').attr('src')) {
$(this).css('border-color', '#EE398C').css('-moz-opacity', '1');
}
});
});
});
</script>
</body>
</html>

