Variabele Framebreite Bitte um Hilfe
Jan
- javascript
Hallo,
ich möchte meine Frameeinteilung je nach Bildschirmgrösse ändern.
Also mit 800 die kleine Version, die aber eigentlich gedrungen aussieht,
und mit 1024 und mehr ein bischen mehr Platz zwischen Menu und Hauptframe.
Ich habe das mit document.writeln versucht, das klappt aber nicht.
Da habe ich nur document.writeln(''); auf dem screen, statt meiner Frames
Wäre schön, wenn mir jemand helfen könnte :o(
<script language="JavaScript">
<!--
if(screen.availWidth >= "800") {
menu_breite = 140;
}
if(screen.availWidth >= "960") {
menu_breite = 174;
}
//-->
</script>
document.writeln('<FRAMESET cols="' + menu_breite + ',*" border="0" frameborder="0" framespacing="0">');
Danke und Viele Grüsse, Jan
Hi, Jan
ich möchte meine Frameeinteilung je nach Bildschirmgrösse ändern.
Bitte nicht, frage besser die Fenstergröße ab. Die Auflösung hat absolut nichts mit der Größe des Fensters zu tun.
http://selfhtml.teamone.de/javascript/objekte/screen.htm#avail_width = falsch
http://selfhtml.teamone.de/javascript/objekte/window.htm#inner_width = richtig
<script language="JavaScript">
...
document.writeln('<FRAMESET cols="' + menu_breite + ',*" border="0" frameborder="0" framespacing="0">');
//-->
</script>
Es sollte helfen, die Ausgabe auch im Scriptbereich anzusiedeln ;-)
LG Orlando
Hi Orlando,
*Juppie* das funktioniert ja :o)
Bei inner.width steht JS 1.2 und NS only :o(
Geht das auch mit IE?
Wenn ja, wird das neu gelesen, wenn sich die Fenstergrösse ändert,
oder muss ich da irgendwas Wildes mit onresize=??? basteln?
Vielen Dank und Viele Grüsse, Jan
Hi, Jan
*Juppie* das funktioniert ja :o)
Bei inner.width steht JS 1.2 und NS only :o(
Geht das auch mit IE?
Ups, das hatte ich ja gar nicht gesehen. Vielleicht hilft dir folgende Seite weiter, die diverse Abfragen ermöglichen sollte: http://www.xs4all.nl/~ppk/js/winprop.html
Wenn ja, wird das neu gelesen, wenn sich die Fenstergrösse ändert,
oder muss ich da irgendwas Wildes mit onresize=??? basteln?
Bei Änderungen des Fensters einer bereits geladenen Seite hilft nur 'onresize'.
Vielleicht wäre es besser, diese Framebreite in Prozentwerten anzugeben, dann hast du nämlich automatisch das Ergebnis, das du willst und benötigst auch kein JS, das bei sehr vielen Leuten deaktiviert ist. Probier' das mal.
LG Orlando
Hi Orlando,
hab noch den hier gefunden: document.body.clientWidth
http://forum.de.selfhtml.org/archiv/2002/3/8289/#m45804
Dann klappts auch mit dem Nachbarn ...
Prozentangaben ist ne gute Idee,
sieht bei mir aber Sch... aus mit > 1024,
weil der Hauptframe schon Linksorientierung haben muss.
(Wildes Scrolling-Untermenu)
Es sei denn, Du kannst mir sagen, wie ich einen mitscrollenden Layer
immer 200px links neben der Seitenmitte positioniert kriege.
Daran hab ich mir schon die Hörner abgestossen :o(
Das würde mir aber nochmal einen völlig anderen Seitenaufbau ermöglichen.
Das Javascript ist in diesem Fall kein Problem,
weil der Frame zum Auto-Framenachladescript gehören soll,
was eben nur mit eingeschaltetem JS aktiviert wird.
Ansonsten wird "natürlich" auch eine framelose Navigation möglich sein ;o)
Vielen Dank nochmal und liebe Grüsse, Jan
Hi, Jan
Es sei denn, Du kannst mir sagen, wie ich einen mitscrollenden Layer
immer 200px links neben der Seitenmitte positioniert kriege.
Daran hab ich mir schon die Hörner abgestossen :o(
Olé!
<style type="text/css">
<!--
#eins {
position:absolute;
left:50%; /* mittig positionieren */
margin-left:-200px; /* 200px nach links verschieben */
background:#eee; /* zur Demonstration */
}
-->
</style>
<div id="eins">
<p>ID eins</p>
</div>
Das würde mir aber nochmal einen völlig anderen Seitenaufbau ermöglichen.
Gutes Gelingen ;-)
LG Orlando