Hallo Gemeinde,
aber mal wieder ein Problem.
Es geht um ein Submenu das durch ein event geöffnet wird. Dann soll über ein request das jeweilige submenu dargestellt werden.
Dabei tritt folgendes Problem auf: Ohne request läuft das einwandfrei!
Mit request gibt es das Problem: Beim erstmaligen click öffnet sich das submenu. Wähle ich jetzt einen anderen Button so schließt das submenu und nicht passiert. Es muss nochmal geklickt werden und siehe da, das submenu öffnet sich wieder. Das soll allerdings bei jedem Klick geschehen.
Framework: prototype
hier die js-Teil
Besten dank
derTrallala
aber mal wieder ein Problem.
Es geht um ein Submenu das durch ein event geöffnet wird. Dann soll über ein request das jeweilige submenu dargestellt werden.
Dabei tritt folgendes Problem auf: Ohne request läuft das einwandfrei!
Mit request gibt es das Problem: Beim erstmaligen click öffnet sich das submenu. Wähle ich jetzt einen anderen Button so schließt das submenu und nicht passiert. Es muss nochmal geklickt werden und siehe da, das submenu öffnet sich wieder. Das soll allerdings bei jedem Klick geschehen.
Framework: prototype
Code:
<div id = "secondary_menu" style = "display: none;"> </div>
Code:
function showSecondaryNav(tagid, url) { new Effect.SlideDown('secondary_menu', { duration: 0.6, }); // clear active Buttons clearPrimaryNav(); // aktuellen Button aktiviern param = url.split("?"); link = param[1].split("="); $(link[link.length - 1]).className = 'active'; // aktivierte Button auf normal setzen // Submenu holen simpleRequest('getSubNav', 'secondary_menu'); } function clearPrimaryNav() { // Links auf class='normal' setzen var links = $("primary_menu").getElementsByTagName("a"); for (var i = 0; i < links.length; i++) { // Ebene 1 links[i].className = ''; } } function str_replace(search, replace, subject) { return subject.split(search).join(replace); } function simpleRequest(param, block) { var myAjax = new Ajax.Request('inc/content.php', { method: 'get', parameters: 'action=' + param, onComplete: function(e) { $(block).innerHTML = e.responseText; } }); return; }
derTrallala