Damit die Scripts funktionieren müssen Sie beachten, dass bei den meisten Beispielen die Befehle aus Variablen zusammengesetzt sind, die im sogenannten "Browsersniffing" generiert werden, dass, seiner Funktion (nämlich den verwendeten Browser zu ermitteln und die Funktions-Syntax entsprechend anzupassen) entsprechend, Eingangs Ihres Script-Bereichs einzusetzen ist.
Zum anderen gibt es Variablen die lokal (innerhalb der Funktion) bestehen.
Des weiteren müssen Sie die Funktion per Event-Handler aufrufen.
Und schließlich noch die "id" (der Name, aber es ist id zu verwenden, da die Browser auf das Attribut name="xyz" nicht reagiert) der anzusprechenden Ebene einsetzen.
Für das Verständnis auch noch wichtid: Mit "//" können einzeilige Kommentare eingefügt werden.
Ich wünsche ein fröhliches "COPYANDPASTE"!
|
INHALT:
|
Allgemeiner Javascriptbereich
Browsersniffing
Variablendeklaration
Ebenenposition fix bei varibler Fensterbreite
Ebene statisch bei Scrollen
Ebene fährt Scrollbar-Position nach
Ebene (un)sichtbar schalten
Ebene bewegen
Ebenenposition zurücksetzen
Ebene klebt an der Mouse
Bei Mouseover Rand-/Hintergrundfarbe des td wechseln
Neues Fenster mit deffinierter Größe und Position öffnen
Neue Fenster mit unterschiedlichen Attributen öffnen
|
Allgemeiner Javacript Script-Bereich mit Browsersniffing und Variablendeklaration
|
<script language="JavaScript">
ie = (document.all)? 1:0; // Abfrage auf Internet Explorer
nn = (document.layers)? 1:0; // Abfrage auf Netscape Navigator
gecko = (document.getElementById)? 1:0; // Abfrage auf Mozilla
//Variablenvergabe füe ie, nn und gecko
if(ie) {
teil1 = "document.all.";
teil2 = ".style.";
teil3 = "pixelTop=";
teil4 = "pixelLeft=";
teil5 = "document.body.scrollTop+400";
teil6 = "document.body.offsetWidth";
teil8 = "pixelTop"; }
if(nn) {
teil1 = "document.";
teil2 = ".";
teil3 = "top=";
teil4 = "left=";
teil5 = "window.pageYOffset+400";
teil6 = "window.innerWidth ";
teil8 = "top"; }
if(gecko && !ie) {
teil1 = "document.getElementById('";
teil2 = "').style.";
teil3 = "top=";
teil4 = "left=";
teil5 = "window.pageYOffset+400";
teil6 = "window.innerWidth";
teil8 = "top"; }
</script>
|
Funktionen:
|
Ebene nicht scrollen
|
function checkyLocation() { object = "ebenenname"; yy = eval(teil5); eval(teil1+object+teil2+teil3+yy);
setTimeout("checkLocation()",40); }
|
Ebene fährt Scrollbar hinterher (so wie bei der nach-oben-Ebene rechts)
|
function checkyLocation() {
object = "ebenenname";
pos0 = parseInt(eval(teil1+object+teil2+teil8)); //Ursprungs-Position yy = eval(teil5);
step = parseInt((eval(yy-pos0))/35); //Schrittweite
posn = eval(parseInt(pos0+step)); //Koordinate der Zwischenposition
//Sichtbar schalten ab posy > 580
if(posn >=580) {
eval(teil1+object+teil2+"visibility = 'visible'");
}
else {
eval(teil1+object+teil2+"visibility = 'hidden'");
}
eval(teil1+object+teil2+teil3+posn); //Positionierung
setTimeout("checkLocation()",40);
}
|
Bewegung einer Ebene von links nach rechts mit StoppPunkt und Neubeginn
|
function init() { posx = parseInt(eval(teil1+"ebenenname"+teil2+"left")); if(posx >= posx2-48) { eval(teil1+"ebenenname"+teil2+"left = "+"-170"); } else { posx += 1; eval(teil1+"ebenenname"+teil2+"left = "+posx); } setTimeout("init()",30); return true; }
|
Ebenen-x-position unabhängig der Fensterbreite (so wie bei der nach-oben-Ebene rechts)
|
function checkxLocation() { posx = eval(teil6+"/2+255"); eval(teil1+object+teil2+teil4+"posx"); }
|
Hintergrund- und Randfarbe bei Mouseover wechseln (wie bei meinen Menues)
|
function onOver(td){ if(document.getElementById||(document.all && !(document.getElementById))){ td.style.backgroundColor = "#00b8bf"; td.style.cursor = "hand"; td.style.borderTopColor = "#003030"; td.style.borderLeftColor = "#003a3a"; td.style.borderRightColor = "#00c0c7"; td.style.borderBottomColor = "#00ccc3"; } }
function onOut(td){ if(document.getElementById||(document.all && !(document.getElementById))){ td.style.backgroundColor = "#004444"; td.style.borderTopColor = "#008080"; td.style.borderLeftColor = "#007474"; td.style.borderRightColor = "#003a3a"; td.style.borderBottomColor = "#003030"; } }
|
Ebene klebt bei Klick an der Mouse z. B zum freien Positionieren eines Menues
|
(nn||gecko)? window.captureEvents(Event.MOUSEMOVE):0; (nn) ? window.onMouseMove = merke:document.onmousemove = merke; var mposx = 0; var mposy = 0; var posx = 0; var posy=0;
function m(e){ mposx = (nn||n6)?e.pageX:event.x; mposy = (nn||n6)?e.pageY:event.y; bewege(); }
function bewege(){ if(ie){ document.all.fenster1.style.left = mposx-posx; document.all.fenster1.style.top = mposy-posy; } }
function merke(e){ mposx = (nn||gecko)?e.pageX:event.x; mposy= (nn||gecko)?e.pageY:event.y; return true; }
function go(){ if(ie){ posx = mposx-parseInt(document.all.fenster1.style.left); posy = mposy-parseInt(document.all.fenster1.style.top); } (nn)? window.onMouseMove = m:document.onmousemove = m; return true; }
function stop(){ (nn)? window.onMouseMove = merke:document.onmousemove = merke; return true; }
|
Auf Klick unsichtbar schalten
|
function f_zu(){ eval(teil1+"ebenenname"+teil2+"visibility = 'hidden'"); //auch 'hide' //eval(teil1+"ebenenname"+teil2+"visibility = 'visible'"); //auch 'show'
return true; }
|
Neues Fenster mit fixer Größe und Position öffnen
|
function neuesfenster(welcheDatei) { fenster=window.open(welcheDatei,'f1', 'width=200, height=100, top=150, left=280'); fenster.focus(); }
|
Neue Fenster mit variabler Attributzuweisung öffnen
|
function neuesfenster(welcheDatei,name,w,h,l,t) { fenster=window.open(welcheDatei,name,"width="+w+",height="+h+",left="+l+",top="+t); fenster.focus(); }
|