Hallo Linuchs
window.addEventListener('load', function ( ) { // Web-Bilder finden obj = document.getElementsByClassName( "webcam" ); alert ( "[" +obj.length +"] Web-Bilder" ); // meldet 1 Bild for ( i=0; i<obj.length; i++ ) { obj.style.border = "1px solid #000"; obj.style.padding = "2px"; } });
Abgesehen von dem, was die anderen bereits gesagt haben: Mir ist in deinem Code aufgefallen, sowohl in diesem Thread also auch im Letzten, dass du offenbar jede Menge globale Variablen produzierst, da du konsequent das Schlüsselwort var
auslässt.
// globale Variable obj obj = document.getElementsByClassName( "webcam" ); // globale Variable i for ( i=0; i<obj.length; i++)
Jede Zuweisung die du vornimmst ohne die Variable lokal zu deklarieren erzeugt eine globale Variable, also eine Eigenschaft des Objektes window
, womit du völlig unnötig das Risiko von Namenskonflikten schaffst. Das heißt, du solltest deine Variablen vor der Verwendung immer deklarieren, also bei der Erzeugung der Variable das Schlüsselwort var
notieren.
var obj = document.getElementsByClassName('webcam');
for (var i = 0; i < obj.length; i ++) // ...
Um dich dagegen zu schützen, versehentlich globale Variablen zu produzieren, kannst und solltest du dein Programm – oder zumindest einzelne Funktionen – im Strict Mode ausführen. Wenigstens in der Entwicklungsphase. Wenn du dann das Schlüsselwort var
vergisst wird eine Ausnahme geworfen und du kannst den Fehler sofort korrigieren.
function safe ( ) {
'use strict';
foo = 42;
}
safe( ); // Error - assignment to undeclared variable foo
Gruß,
Orlok