mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Fr 29.03.2024 02:53 Benutzername: Passwort: Auto-Login

Thema: GELÖST Bildschirmposition als Variable übergeben(Javascript) vom 02.02.2008


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Programmierung -> GELÖST Bildschirmposition als Variable übergeben(Javascript)
Autor Nachricht
ledaro
Threadersteller

Dabei seit: 03.12.2007
Ort: -
Alter: -
Geschlecht: -
Verfasst Sa 02.02.2008 09:11
Titel

GELÖST Bildschirmposition als Variable übergeben(Javascript)

Antworten mit Zitat Zum Seitenanfang

Moin,

ich habe eine vertikale PHP+CSS-Navigation, bei der sich die Links der Subnavigation erst beim Klicken auf die Kategorie öffnen.
Funzt alles prima, aber, da die Seite dafür jedesmal neu geladen werden muss, springt der Bildschirm immer an den Nullpunkt zurück, was sehr unrythmisch ist.
Ich habe mit Javascript Hmm...?! eine Lösung für den FF und OP gefunden (s.u.), aber der IE verweigert.
Kann mir jemand helfen?
Wichtig: XHTML, CSS-Layout, PHP-Navi, alles mit validem Code, zugänglich und barrierearm.
Javascript soll nur so wenig wie möglich vorkommen; eine komplette Java-Navi kommt nicht in Frage.
Irgendwie muss die Bildschirmposition übernommen werden und (vermutlich) als Variable an die php.Navi übergeben werden.

[code]
function funktion(oLnk)
{
strParam=(String(oLnk.href).match(/\?/)) ? '&' : '?';
strParam+='pos=';
strParam+=(document.all) ? document.body.scrollTop : window.pageYOffset;
oLnk.href+=strParam;
return true;
}
[/code]

Die Navi funzt als DL-Liste, Beispiel:
[code][/code]
<dt><a href="?sub=2" onclick="return funktion(this)">Die Immobilien &amp; Hausbau Projekte in K&ouml;ln</a></dt>
[/code]

Grüße
ledaro


Zuletzt bearbeitet von ledaro am Do 07.02.2008 14:35, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden
pixelpapst303

Dabei seit: 06.07.2006
Ort: hamburg
Alter: 50
Geschlecht: Männlich
Verfasst Mi 06.02.2008 11:52
Titel

Antworten mit Zitat Zum Seitenanfang

darf man mal die seite / die navi / das problem "live sehen"? sonst kann man sich immer so schwer was vorstellen.

vielleicht lässt sich dein problem schon durch anker-links lösen... so ala:

Code:

<html>
<head>
</head>
<body>
<div style="width: 3000px; background-color: #cccccc">
 <a href="#ankerTest">hallo</a>
   <div style="float: right; width: 500px;"><a name="ankerTest">Test</a></div>
</div>
</body>
</html>


edit: ich idiot habe glatt vertikal und horizontal verwechselt - aber das prinzip bleibt das gleiche Grins


Zuletzt bearbeitet von pixelpapst303 am Mi 06.02.2008 11:54, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
Anzeige
Anzeige
ledaro
Threadersteller

Dabei seit: 03.12.2007
Ort: -
Alter: -
Geschlecht: -
Verfasst Do 07.02.2008 14:30
Titel

Weiergeleitete Nachricht von Pixelpapst

Antworten mit Zitat Zum Seitenanfang

hi robert

[quote]1. ansatz
dein problem ist, dass du einen standardkonformen doctype benutzt. kling doof, is aber so

schau mal die bemerkungen auf selfhtml unter dem beispiel an:
http://de.selfhtml.org/javascript/objekte/window.htm#page_y_offset

sprich: bei standardkonformen doctype brauchst du document.documentElement.scrollTop um den y-wert zu bekommen. weiter unten im text verweist selfhtml auf quirksmode.org

nimm das script dort um einen sicheren y-wert zu bekommen...! [/quote]

===
Das habe ich (zum 5. Mal wieder erneut) versucht, leider spielt der IE immer noch nicht mit.


[quote]2. ansatz
warum lädtst du die sub-navs nicht gleich mit, und stellst sie nur auf display: none, was dann per klick aufm hauptmenüpunkt auf block gesetzt wird. somit lädt die seite nicht nach. außer bei untermenüpunkten, wo tatsächlich content geladen wird. und das ist meiner meinung ja auch völlig ok so! [/quote]

===
Gute Idee, wenn man akzeptiert, dass bei ausgeschaltetem JS die Unternavi gar nicht mehr existiert.
Zugegebenermassen haben lt. Statistik ca. 97% der User JS aktiviert, aber in Punkto Barrierefreiheit gibt es da eben ein Problem.
Ist wohl auch ein bisschen Ideologie dabei.

Ich habe das Problem inzwischen für den IE7 gelöst, und ganz ehrlich, auf den Rest verzichte ich. Navigieren kann man dann immer noch, nur nicht mehr so hübsch. Es wird nun mit JS ein Cookie gesetzt, per PHP ausgelesen und dann funzt auch document.documentElement.scrollTop.
FF und OP waren vorher schon in der Spur und sind es jetzt immer noch.

Danke und gelöst.
LG
ledaro
  View user's profile Private Nachricht senden
 
Ähnliche Themen [JavaScript] Variable in verlinkten Frame übergeben
Variable von JS an PHP übergeben?
[PHP] Array-Wert an Variable übergeben
jscript variable richtig übergeben
Flash AS3: Variable übergeben (XML an Schaltfläche)
[php][noobfrage] nicht definierte variable übergeben
Neues Thema eröffnen   Neue Antwort erstellen
MGi Foren-Übersicht -> Programmierung


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.