2017-01-10 3 views
-1

Ich habe eine Navigationsleiste per Javascript hinzugefügt. Es machte durch HTML eine href, und ich möchte etwas auf dem onclick Ereignis der href tun. Wenn es jedoch eingehalten wird, wird automatisch auf das Click-Ereignis gewartet.Onclick läuft automatisch ohne Warten auf Klick

Antwort

1

Sie müssen return false, um den Browser neu laden zu stoppen.

<a id="vk" href="#" onclick="return opennav('vagyonkezeles');">Vagyonkezelés</a> 

function opennav(item) { 
    var idnev = "mySidenav" + item 
    for (var i = 0; i < id; i++) { 
     if (voltmarnyitva[i] == idnev) { 
     openNav(item); 
     vmny = 1; 
     i = id; 
     } else { 
     vmny = 0; 
     } 
    } 
    if (vmny == 0) { 
     var sidemenu = document.createElement('div'); 
     var sidemenuid = sidemenu.id = idnev; 
     sidemenu.className = 'sidenav'; 
     document.getElementsByTagName('body')[0].appendChild(sidemenu); 
     readTextFile(item + ".txt", sidemenuid); 
     openNav(item); 
     utoljaranyitva = sidemenuid; 
     voltmarnyitva.push(idnev); 
     id++; 
    } 
    vmny = 0; 
    utoljaranyitva = idnev; 
    return false; 
} 
+0

Es stoppt vom Neuladen und Laden. Aber es stoppt auch das Laden der anderen Menüpunkte. Also, wenn ich das benutze, kann ich keine weitere Schaltfläche hinzufügen. –

+0

Sorry, habe nicht gesehen, dass Sie opennav und openNav haben. Setzen Sie 'return false;' in opennav und entfernen Sie es aus openNav, was ich zuvor vorgeschlagen habe. –

+0

Wenn Sie also auf diese Schaltflächen klicken (wie vagyonkezelés), öffnet sich eine Seitennavigationsleiste und wenn Sie auf ein Element in der Seitenleiste klicken, sollte es einen iframe öffnen. Und um genau zu sein, ist es in der readTextFile (Datei, sideMenuid) {}. –

Verwandte Themen