Ludwig wrote:Jetzt funktioniert es wunderbar in Firefox, aber nicht mehr in den anderen Browsern, wenn ein Menüpunkt einen Untermenü enthält.
Erst wenn man in die Browserzeile klickt und einen Return macht scrollt die Page zum Anker, aber auch nicht sprungenau, in Firefox 35 wird das Ziel genau angescrollt, kann aber auch an meinem Template liegen.
Ich weiß, dass es diese Probleme gibt. Allerdings verhält sich, soweit ich es beurteilen kann, und soweit es überhaupt möglich ist, Onepage_XH mittlerweile korrekt. So wird z.B. versucht per #Templates-%26amp%3B-Plugins auf id="Menu-Levels-&-Headings" zu verweisen; im Quelltext wird das als id="id="Menu-Levels-&-Headings" angegeben. Mir scheint, dass da diverse Browser mit diesen (Ausnahme-)Fällen Probleme haben; Umlaute in den Seitentiteln werden ja anscheinend von den diversen Browsern korrekt angesprungen.
Ich schlage vor, wie auch in der Hilfedatei erwähnt, wenigstens die & in Seitentiteln per uricharchar/org_new zu ersetzen: & -> und, oder & -> -. Alternativ kann man natürlich auch die numerischen URLs aktivieren -- damit sollte es keine Probleme beim Navigieren geben.
Warum die Browser nun manchmal genau zur Überschrift springen/scrollen, und manchmal nicht, ist mir im Detail noch nicht ganz klar. Es hängt auf jeden Fall mit Headern mit position:fixed zusammen. Diese dürften beim direkten Springen per Adresszeile oder Link (ohne JS) die Überschrift überlagern. Das Scrollen per JS berücksichtigt aber die Header, zumindest u.U. Da wird es nämlich knifflig; um die Zielposition zu ermitteln, wird nämlich bei manchen Browsern document.documentElement.scrollTop bei anderen aber document.body.scrollTop ausgewertet. Dummerweise ist diese Eigenschaft
noch nicht standardisiert, und daher verhalten sich die Browser wohl etwas unterschiedlich, besonders in Bezug auf das Adminmenü, dass ja dem HTML Element einen margin-top zuweist. Insgesamt gibt es da ohnehin Problem mit dem Adminmenü und fix positionierten Headern im Template -- damit lässt sich eigentlich nicht arbeiten. Daher habe ich ja auch das alternative Admin-Template eingeführt, aber das darf eigentlich nur im Editmodus genutzt werden (sonst stimmt die Vorschau ja gar nicht), und damit ist es irgendwie sinnlos, weil die Pluginadministration immer im Ansichtsmodus aufgerufen wird.
Ich muss mir das ganze noch mal bei anderen Onepage-Websites anschauen. Auf jeden Fall ist es aber auch zu überlegen, dass man das Menü gar nicht als Header gestaltet, sondern an der Seite des Browserviewports positioniert -- das sollte zumindest die Probleme mit dem Adminmenü beheben, und kann durchaus auch sehr ansprechend aussehen:
http://studiokraftwerk.com/,
http://blog.iforex.com/water/.
PS: Ich habe gerade festgestellt, dass die Navigation auch bei den Seitentiteln mit & funktioniert, wenn ich JavaScript deaktiviere -- ist also ein Bug in Onepage_XH 1beta1 (bin aber noch nicht sicher, ob ich den beheben kann).
@Ludwig: bei dem besagten Template springen die Links (ohne JS) zu weit nach unten. Dem könnte man durch folgendes entgegenwirken:
Code: Select all
.onepage_page {padding-top: 160px}
Allerdings klappt das nicht bei schmalen Viewports, da dann das Menü umbricht, und man das padding-top entsprechend vergrößern müsste. Da müsste ggf. dynamisch per JS nachgebessert werden, falls keine bessere Lösung gefunden wird.