Zum Inhalt springen
Der Guide für ein smartes Leben.
VG Wort Pixel
jQuery: Spotlight - Effekt

Ins rechte Licht gesetzt

Der Spotlight-Effekt bietet eine interessante Möglichkeit, Objekte in Szene zu setzen - mit und ohne Javascript-Framework.

Autor: Andreas Hitzig • 10.9.2011 • ca. 2:15 Min

internet, webdesign, jquery, javascript, framework
Ins rechte Licht gesetzt
© Internet Magazin
Inhalt
  1. Ins rechte Licht gesetzt
  2. Objekte beleuchten
  3. Der Programmcode

Der Spotlight Effekt stellt einzelne Elemente in den Vordergrund. Ein möglicher Einsatzzweck ist eine Bildergalerie: Bewegen Sie die Maus über ein einzelnes Bild, wandern die anderen in den Hintergrund und das markierte Bild steht im Rampenlicht. Fertiges Plug-in Setzen Sie für Ihre Website...

Der Spotlight Effekt stellt einzelne Elemente in den Vordergrund. Ein möglicher Einsatzzweck ist eine Bildergalerie: Bewegen Sie die Maus über ein einzelnes Bild, wandern die anderen in den Hintergrund und das markierte Bild steht im Rampenlicht.

Fertiges Plug-in

Setzen Sie für Ihre Website bereits das Framework jQuery ein, lohnt sich die Anschaffung eines darauf abgestimmten Plugins. Es gibt eine Reihe von Vertretern, die für diese Zwecke entwickelt wurden. Im Beispiel nutzen wir das Plugin spotlight von Dev7Studios (dev-7studios.com ). Am besten laden Sie das Plug-in direkt von der Entwickler-Website (dev7studios.com/demo/jqueryspotlight/ ), da die Verlinkungen im jQuery-Verzeichnis auf eine alte Website verweisen.

Der Einsatz

Die komplette Funktionalität des Spotlight- Effekts ist in einem Plug-in gekapselt, das Sie einfach in Ihre eigenen Seiten integrieren können.

internet, webdesign, jquery, javascript, framework
Ein interessantes Spotlight-Plugin für das Framework jQuery stammt von den Dev7Studios.
© Internet Magazin

Neben dem Plug-in von Dev7Studios gibt es eine Reihe von weiteren Implementierungen für jQuery, die sich alle mit dem Spotlight-Effekt beschäftigen. Unter "Spotlight-Plug-ins"  haben wir weitere Implementierungen kurz beschrieben.

Parameter des Plug-ins

Das Plug-in besitzt eine Reihe von Aufrufparametern, die wir für Sie in einer Übersicht weiter unten zusammengestellt und näher erläutern haben.

$('div').spotlight({
opacity: .7,
speed: 200,
color: '#333',
animate: true,
easing: '',
exitEvent: 'click',
onShow: function(){},
onHide: function(){}
});

Sie können den Aufruf des Spotlight-Effekts komplett ohne Parameter bewerkstelligen.

$('#element1').spotlight();

In diesem Fall werden für alle Parameter die Standardwerte herangezogen.

Der erste Einsatz

Auf der HTML-Seite müssen Sie als Erstes Framework und Plug-ins integrieren.

<script type="text/javascript" src=
"scripts/jquery.js"></script><script
type="text/javascript" src="scripts/
jquery.easing.1.3.js"></script><script type="text/javascript" src=
"scripts/jquery.spotlight.js"></
script>

Ins Rampenlicht soll ein rechteckiger Bereich gesetzt werden. Dieser wird mit Hilfe eines einfachen div-Tags realisiert.

<div id="box1" class="box"><p><a href="#" id="spotlight1-
ohneanim">Spotlight 1 (Ohne Animation)</a></p><p><a href="#" id="spotlight1">
Spotlight 1 (Animiert)</a></p></div>

Damit das Ganze auch optisch als Box erscheint, benötigen Sie ein wenig CSS:

.box {
width:200px;
height:200px;
background:#ddd;
border:2px solid #333;
padding:10px;
margin:10px;
}
}

Die Box soll eine Breite und eine Höhe von 200 Pixeln besitzen. Der Innenabstand sowie der Abstand zu anderen Objekten betragen jeweils 10 Pixel. Die Hintergrundfarbe ist ein helles Grau, der Rahmen erscheint in einem dunkleren Grau und besitzt eine Stärke von 2 Pixeln. Dann fehlt nur noch die Integration des Programmcodes. Die Box besitzt zwei Links, die zum Auslösen zweier Aktionen dienen: des Spotlight-Effekts mit und ohne Animation.Der Zugriff erfolgt über die ID des Links, also spotlight1-ohneanim und spotlight1.

<script type="text/javascript">
$(document).ready(function(){
$('a#spotlight1-ohneanim').click
(function(){
$('#box1').spotlight({animate:false});
});
$('a#spotlight1').click(function(){
$('#box1').spotlight();
});
});</script>