Statischer Frame oder Layer...

speicher

Erfahrenes Mitglied
Hallo,

ich würde gern für meine Seite einen Loginscript realisieren und dafür eine statischen Layer,
der auch beim Scrollen der restlichen Seite sich nicht bewegt, einfügen, wo die PWD Eingabe erfolgt. Wenn das PWD richtig ist soll dieser Layer verschwinden.

Nun meine Frage...geht das mit einem Layer ? Brauche ich dafür javascript? Falls ja, was passiert dann, wenn js nicht unterstützt wird....

Danke für Eure Hilfe
 
Die statische Position bekommst du in Opera und Mozilla per CSS hin, im IE nur per Javascript.

Was passiert, wenn JS im IE aus ist.....der Layer schwirrt irgendwo in der Seite herum...auf jeden Fall nicht da, wo du ihn gerne hättest.

Statisch positionieren

Das Verstecken geht nur mit JS....du musst dafür die visibility des Layers auf "hidden" stellen.
 
danke erst einmal....

dann hätte ich noch eine frage zu javascript. wird das von allen browsern identisch interpretiert?

also ich meine, nicht, dass es dann mit opera und mozilla immer noch nicht funktioniert...wäre ein wenig dumm.

danke für deine antwort....
 
Größtenteils ist Javascript standarisiert funktioniert also überall, allerdings gibt es hier auch Ausnahmen,wie in CSS, die du aber meistens durch Workarounds lösen kannst.
 
Hi, hab da schon was für ne andere seite geschrieben - funktioniert z.Zt. bei 95% der user. Vielleicht hilft's dir ja.
Kannst du gerne benutzten, lass nur bitte den Kommentar drinen:
HTML:
    <html><head><title>Menue</title><meta name="AUTHOR" content="confus">
     
     <style type="text/css"><!--
     
     	#menu {
     	position: absolute;
     	margin-bottom:10px;
     	left:1%;
     	width:98%;
     	color: white;
     	background-color:black;
     	z-index: 5
     	}
     
     --></style>
     
     <script language="JavaScript" type="text/javascript"><!--
     // code by con-f-use@gmx.net
     
     	var menu, old, trigger;
     
     	function Object(name) {
     		if (document.getElementById) {
     			this.obj = document.getElementById(name);
     			this.style = document.getElementById(name).style;
     		}
     		else if (document.all) {
     			this.obj = document.all[name];
     			 this.style = document.all[name].style;
     		}
     		else if (document.layers) {
     			this.obj = document.layers[name];
     			this.style = document.layers[name];
     		}
     	}//function Object
     
     	function movemenu() {
 		if (trigger==1) { if (document.layers) { menu.style.visibility="hide" } else { menu.style.visibility="hidden" } return }
     		if (window.innerHeight) {
 			pos = window.pageYOffset + window.innerHeight - menu.obj.offsetHeight - 10;
     		}
 		else if (document.documentElement && document.documentElement.scrollTop && document.documentElement.clientHeight) {
 			pos = document.documentElement.scrollTop + document.documentElement.clientHeight - menu.obj.clientHeight - 10;
     		}
     		else if (document.body && document.body.clientHeight) {
 			pos = document.body.scrollTop + document.body.clientHeight - menu.obj.clientHeight - 10;
     		}
     
     		if (pos!=old) {
     			smooth = .08 * (pos - old);
     			if (smooth > 0) { smooth = Math.ceil(smooth); }
     			else { smooth = Math.floor(smooth); }
     			if (document.all) { menu.style.pixelTop += smooth; }
 			else if (document.getElementById || document.layers) { menu.style.top = parseInt(menu.style.top) + smooth; }
     			old += smooth;
     		}
     
     		setTimeout("movemenu()", 5);
     	}//function movemenu
     
     	function initialize() {
     		old = 0;
     		trigger = 0;
     		menu = new Object("menu");
     		menu.style.top = 0;
     		movemenu();
     	}//function initialize
     
     	window.onload = initialize;
     
//--></script></head>
     
     <body>
     
     1.<br>2.<br>3.<br>4.<br>5.<br>6.<br>7.<br>8.<br>9.<br>10.<br>
 11.<br>12.<br>13.<br>14.<br>15.<br>16.<br>17.<br>18.<br>19.<br>20.<br>
 21.<br>22.<br>23.<br>24.<br>25.<br>26.<br>27.<br>28.<br>29.<br>30.<br>
 31.<br>32.<br>33.<br>34.<br>35.<br>36.<br>37.<br>38.<br>39.<br>40.<br>
 41.<br>42.<br>43.<br>44.<br>45.<br>46.<br>47.<br>48.<br>49.<br>50.<br>
 51.<br>52.<br>53.<br>54.<br>55.<br>56.<br>57.<br>58.<br>59.<br>60.<br>
 61.<br>62.<br>63.<br>64.<br>65.<br>66.<br>67.<br>68.<br>69.<br>70.<br>
 71.<br>72.<br>73.<br>74.<br>75.<br>76.<br>77.<br>78.<br>79.<br>80.<br>
 81.<br>82.<br>83.<br>84.<br>85.<br>86.<br>87.<br>88.<br>89.<br>90.<br>
 91.<br>92.<br>93.<br>94.<br>95.<br>96.<br>97.<br>98.<br>99.<br>100.<br>
     
     <div id="menu">
        laber bla<br>
        bla laber<br>
     </div>
     
     </body></html>
in den div-Bereich könntest du deine Passwortabfrage setzen und wenn das passwort dann richtig ist setzt du die Variable trigger auf 1
 
Zuletzt bearbeitet:
Hi

vielen Dank für das Script. Ist wirklich nicht schlecht. Wenn ich es verwende lass ich natürlich alles drin.
Aber ich muss sagen, dass ich es lieber hätte, wenn dieses Feld sich nicht bewegen würde und stattdessen immer , wie ein Fram halt, auf dieser Pos. bleibt. Ich hoffe, Du verstehst , was ich meine.
Danke aber nochmals für die Hilfe

Gruß
 
Ich versteh, was du meinst, aber das ist leider mit JavaScript unmöglich, es sei denn du nimmst ein hässliches flackern in kauf.
Mit CSS gibt's ne Methode ohne flackern, aber die funktioniert bei rund 50% der User, nämlich denen, die den Internet Explorer zum surfen benutzten nicht.

Die Methode mit flackern kann ich dir auch mal vorführen, aber das sieht wirklich hässlich aus...
 
Mhm....also wenn Du schon meinst, dass es häßlich ist, dann brauch ich es mir wirklich nicht ansehen. Das ist irgendwie ärgerlich, dann versuche ich halt mal mit einem Frame und versuche den dann zu löschen oder zu verstecken. Danke aber. Wer noch etwas weiß, bitte nur zu...
 
Also den Frame "schließt" du (in wirklichkeit läds nur das document im Hauptframe ins ganze fenster) mit "top.location.href = top.nameDesHaupframes.location.href;"
 
Zurück