Archivlink: javarea.de Forum > JavaScript > Foldout-Menü ist in explorer 7 nicht sichtbar
Vollständigen Link anzeigen: javarea.de Forum > JavaScript > Foldout-Menü ist in explorer 7 nicht sichtbar
Pages: [1]
| geschrieben von Jürg am 16.11.2006 - 10:37 |
Hallo Java-Team
Letztes Jahr habe ich von weisnix einen tollen Code für ein Foldout-Menü erhalten. Den Code habe ich beim Forum-Code eingefügt. Ausserdem habe ich ihn auch im Anhang in einem Word-Dokument mit geliefert.
Gestern habe ich auf meinem PC den explorer 7 installiert. Mit grossem Bedauern & Schrecken musste ich feststellen, dass der explorer 7 das Foldout-Menü nicht zeigen kann und damit eine Navigation in der Website nicht mehr möglich ist.
Wie das tolle Foldout-Menü in den älteren Browsern bis explorer 6 aussehen kann, siehst du auf der Website http://www.stapfenacker.ch
Schau doch einmal rein!
Nun meine grosse Frage und ebenso grosse Bitte: Wer kann mir die fehlenden Code-Zeilen liefern, damit das wirklich schöne Foldout-Menü auch unter dem explorer 7 wieder läuft.
Freut mich von euch zu hören.
Es grüsst euch Jürg (spezieller Gruss an weisnix, der sehr viel weiss!) |
| geschrieben von okley am 16.11.2006 - 19:17 |
So auf die schnelle würde ich sagen, dass du der Methode lib_bwcheck() im Foldout Menu Script mitteilen solltest das da ein neuer Browser auf dem Markt ist. Vielleicht wars das dann auch schon.
Wie du das genau machst weiss ich jetzt nicht ...  |
| geschrieben von weisnix am 16.11.2006 - 21:56 |
@okley
genau das ist es.
Ich bin zwar gerade ein wenig im Prüfungsstress, das heißt ich muss mich mehr auf meine Gesellenprüfung konzentrieren, aber hier den Zusatz für den IE7.
| Zitat | | | function lib_bwcheck(){ //Browsercheck (needed)
this.ver=navigator.appVersion
this.agent=navigator.userAgent
this.dom=document.getElementById?1:0
this.opera5=this.agent.indexOf("Opera 5")>-1
this.ie5=(this.ver.indexOf("MSIE 5")>-1 && this.dom && !this.opera5)?1:0;
this.ie6=(this.ver.indexOf("MSIE 6")>-1 && this.dom && !this.opera5)?1:0;
this.ie7=(this.ver.indexOf("MSIE 7")>-1 && this.dom )?1:0;
this.ie4=(document.all && !this.dom && !this.opera5)?1:0;
this.ie=this.ie4||this.ie5||this.ie6||this.ie7
this.mac=this.agent.indexOf("Mac")>-1
this.ns6=(this.dom && parseInt(this.ver) >= 5) ?1:0;
this.ns4=(document.layers && !this.dom)?1:0;
this.bw=(this.ie7 || this.ie6 || this.ie5 || this.ie4 || this.ns4 || this.ns6 || this.opera5)
return this |
@Jürg
Danke für den Gruß. |
| geschrieben von Jürg am 16.11.2006 - 22:51 |
Viiiielen Dank weisnix und okley
Zwar ist der Text nun sichtbar, aber die ursprünglichen Abstände vom oberen Rand stimmen nicht mehr und die Menüs liegen nun zu dicht beieinander. Schau doch einmal unter http://www.stapfenacker.ch auf dem grünen Reiter nach, wie es aussieht!
Das Problem ist folgendes: Wo muss ich was ändern, dass die Abstände sowohl in den alten Browsern (dort funktioniert es wunderbar) als auch im explorer 7 gleich dargestellt werden?
Ich habe im Anhang noch die betreffende Datei mitgeschickt.
Danke für eure Hilfe.
Gruss Jürg
an weisnix: Halte dir die Daumen für die Prüfungen. |
| geschrieben von okley am 17.11.2006 - 13:03 |
| hast du den ie7 auch in der makeMenu Methode ergänzt? Ich denke du müsstest den da auch noch einfügen. Weil dort werden die Höhen der Menus Browserabhängig gesetzt. |
| geschrieben von Jürg am 17.11.2006 - 17:44 |
Hallo okley, danke für deinen Tipp.
Richtig. Habe die makeMenu-Zeile durch die unten stehende Zeile ergänzt. War aber damit nicht erfolgreich.
this.h= (bw.ie||bw.ns7)?this.el.offsetHeight:bw.ns4?this.ref.height:bw.opera5?this.css.pixelHeight:0;
gruss jürg |
| geschrieben von weisnix am 17.11.2006 - 20:07 |
Hallo Jürg,
da muss was anderes bei dir falschgelaufen sein. Bei this.h must du nicht nochmals den IE7 eintragen.
Dort heißt es doch schon (bw.ie||bw.ns6) (bw.ie steht durch den Browsercheck auch für den 7ner).
this.ie=this.ie4||this.ie5||this.ie6||this.ie7
Ich häng dir mal das Originalscript an, mit der Änderung auf IE7. Vielleicht hilft es dir den Fehler zu finden.
Ansonsten werde ich mich mal am Sonntag dran machen.
Gruß
|
| geschrieben von Jürg am 18.11.2006 - 17:54 |
Hallo weisnix
Du kommst mir wie ein weiser Ausserirdischer aus den Weiten des Internet-Universums vor.
Ich habe den Original-Code verwendet, den du mir geschickt hast, und ich habe darin die nötigen individuellen Anpassungen vorgenommen.
UND SIEHE DA! Alles klappt wie bisher! Herzlichen Dank.
Wenn du Lust hast, kannst du dir deinen veränderten Original-Code auf meiner Homepage anschauen: http://www.stapfenacker.ch
Du kannst dir also deinen Sonntag für anderes freihalten. Herzlichen Dank auch dafür, dass du sogar am Sonntag für mich schuften wolltest. Es würde mir vielleicht höchstens im Traum einfallen, einen solchen Support von dir zu erwarten, bzw. zu verlangen.
Auf jeden Fall bin ich extrem erleichtert, dass meine Website nun auch auf dem "Internet Explorer 7" läuft. Vielen Dank dafür.
Wie gesagt, dieses Foldout-Menü ist für mich das Feinste und es entspricht genau meinen Wünschen. Ich gratuliere für diese tolle Arbeit!
Ich wünsche dir alles Beste.
Es grüsst dich freundlich Jürg
1. P.S.:
Gerne überweise ich dir auf ein Konto einen Betrag als Dankeschön. Ich schätze, dass du meine private E-Mail-Adresse kennst. Schicke mir doch deine Bank-Clearing-Nummer.
2. P.S:
Im divCont habe ich noch eine Zeile ".clSubleer" eingefügt. Du weisst am Besten, ob diese Zeile wirklich nötig ist oder nicht. Auf jeden Fall verursacht sie bei mir keinen Absturz (siehe unten).
#divCont {position:absolute; z-index:1; left:13px; top:55px; height:400px; width:170px; visibility:hidden;}
.clTop {position:absolute; z-index:1; width:170px; line-height:18px;}
.clSub {position:absolute; z-index:1; left:20px; top:20px; width:170px; line-height:14px;}
.clSubleer {position:absolute; z-index:1; left:0px; top:0px; width:170px; line-height:1px;}
|
| geschrieben von weisnix am 19.11.2006 - 00:53 |
Habe ich noch in Erinnerung (".clSubleer"), das ist für ein leeres Topmenü. Also wenn kein Submenü verwendet wird.
Habe deine Seite kurz aufgerufen. Laut meinem IE/ gibt es da noch einen Fehler (Zeile 37 Syntaxfehler)
pre__01navbild2-over = newImage('../buttons/navigation/01navbild2-over.gif');
dass müsste das Minuszeichen bei 01navbild2-over sein. JavaScript möchte da von pre__01navbild2 das over abziehen.
| Zitat | | | Gerne überweise ich dir auf ein Konto einen Betrag als Dankeschön. Ich schätze, dass du meine private E-Mail-Adresse kennst. Schicke mir doch deine Bank-Clearing-Nummer. |
Finde ich eigentlich ganz Toll.
Ich werde dein Web bei mir in die Favoriten mit aufnehmen. Da wird es bestimmt mal eine andere Möglichkeit geben als Geld. Von einander lernen ist mir einfach wichtiger. Es ist immer ein beruhigendes Gefühl wenn man nicht alleine ist.
Trotz dem vielen Dank.
Aber, wenn du es unbedingt loswerden möchtest, hat das Javboard bestimmt Verwendung und damit wieder wir alle.
|
| geschrieben von Jürg am 20.11.2006 - 17:17 |
Hallo weisnix
Es freut mich ausserordentlich, dass du meine Homepage gut findest. Danke für das Lob.
Tolle Ideen sollte man realisieren. Schicke mir doch bitte deine / eure Bank-Clearing-Nummer für ein Dankeschön. Es reut mich nichts, denn ohne dich hätte ich vermutlich lange und ebenso vermutlich erfolglos in die Röhre geguckt.
Meine E-Mail-Adresse: steiner-j@bluewin.ch
Es grüsst dich Jürg
P.S.: Vielen Dank für den Hinweis, dass in Zeile 37 noch eine Fehlermeldung ist. In der Tat handelt sich dort um einen "mouseover", der nicht mehr richtig interpretiert wird. Ich werde diesem Fehler - sobald ich Zeit habe - nachgehen und hoffe, dass ich ihn ausbügeln kann. |
|