Du bist nicht angemeldet. Der Zugriff auf einige Boards wurde daher deaktiviert.

#1 07. Januar 2013 14:55

dylan
kennt CMS/ms
Ort: Münsterland
Registriert: 16. Dezember 2010
Beiträge: 303

Navigation auf mobilen Endgeräten (onmouseover)

Da auf mobilen Endgeräten das onmouseover fehlt, nutze ich zur Anzeige der Sub-Navigation (per klick Untermenüs aufklappen) folgendes script:

<script type="text/javascript">
$(document).ready(function(){
// iOS Hover Event Class Fix
if((navigator.userAgent.match(/iPhone/i)) || (navigator.userAgent.match(/iPod/i)) || (navigator.userAgent.match(/iPad/i))) {
$("#primary-nav li a").click(function(){  // Update class to point at the head of the list
});
}
});
</script>

Leider klappen bei diesem script keine Subs mit dem Typ 'Abschnittsüberschrift' auf. Es klappen lediglich Menüs mit dem Typ 'Inhalt' auf.
Die ID ist korrekt eingetragen.

Kennt vielleicht jemand eine bessere Lösung um die Navigation auf mobilen Geräten funktionstüchtig zu machen?

Offline

#2 07. Januar 2013 15:13

NaN
Moderator
Ort: Halle (Saale)
Registriert: 09. November 2010
Beiträge: 4.437

Re: Navigation auf mobilen Endgeräten (onmouseover)

Der Fehler liegt hier:

Abschnittsüberschriften enthalten keine Links.
Ich kenne jetzt Dein Menütemplate nicht, aber Du kannst ja alle Menüpunkte nochmal in ein Span-Element packen und dann z.B. so darauf zugreifen:

Oder allen Menüpunkten, die auf onmouseover reagieren sollen, eine entpsrechende Klasse geben (z.B. mouseover) und dann so drauf zugreifen:

etc.


Module: GBFilePicker, AdvancedContent
Sicherheit: Beispiel .htaccess-Datei
CMSms 1.12 unter PHP 7:
cmsms-1.12.3.zip (inoffiziell - komplett inkl. Installer)
CMSms 1.12 unter PHP 8:
cmsms-1.12.4.zip (inoffiziell - komplett inkl. Installer)

Offline

#3 07. Januar 2013 16:09

dylan
kennt CMS/ms
Ort: Münsterland
Registriert: 16. Dezember 2010
Beiträge: 303

Re: Navigation auf mobilen Endgeräten (onmouseover)

Das 'a' stört?

Ich nutze das cssmenu.tpl aus CMS MS 1.11.3

Gibt es für das cssmenu.tpl vielleicht eine einfachere Lösung?

Offline

#4 07. Januar 2013 18:16

dylan
kennt CMS/ms
Ort: Münsterland
Registriert: 16. Dezember 2010
Beiträge: 303

Re: Navigation auf mobilen Endgeräten (onmouseover)

Ich habe es mit span probiert:

<script type="text/javascript">
$(document).ready(function(){
// iOS Hover Event Class Fix
if((navigator.userAgent.match(/iPhone/i)) || (navigator.userAgent.match(/iPod/i)) || (navigator.userAgent.match(/iPad/i))) {
$("#primary-nav li > sectionheader").click(function(){  // Update class to point at the head of the list
});
}
});
</script>

Das menu-Template enthält bereits einen span-Eintrag "sectionheader":

<li class="menuparent"><a class="menuparent"><span class="sectionheader">{$node->menutext}</span></a>

So funktioniert es aber leider nicht.

Offline

#5 07. Januar 2013 20:25

NaN
Moderator
Ort: Halle (Saale)
Registriert: 09. November 2010
Beiträge: 4.437

Re: Navigation auf mobilen Endgeräten (onmouseover)

Ja, das "a" stört. Denn damit werden nur die Links angesprochen. Entweder du formulierst den Selector allgemeiner (gib also allen Elementen mit mouseover-Effekt eine Klasse und sprich die Klasse an) oder Du musst sowohl Links als auch Spans mit der Klasse "sectionheader" ansprechen. Der Syntax bei Deinem Selector ist falsch. Es gibt kein Element namens "sectionheader". Klassen spricht man mit einem Punkt an: ".sectionheader"


Module: GBFilePicker, AdvancedContent
Sicherheit: Beispiel .htaccess-Datei
CMSms 1.12 unter PHP 7:
cmsms-1.12.3.zip (inoffiziell - komplett inkl. Installer)
CMSms 1.12 unter PHP 8:
cmsms-1.12.4.zip (inoffiziell - komplett inkl. Installer)

Offline