DropDown klappt sich ein beim Anklicken des Contents

  • Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!
2 August 2017
118
1
18
21
#1
Hey,
Ich habe mir ein DropDown Menü erstellt. Leider ist nun das Problem, wenn ich auf den DropDownContent drücke, sich dieses einklappt. Leider weiß ich nicht wie ich das verhindere. Hat jemand ne Idee?
s
HTML:
    <div id="dropDownButtons">
        <a onclick="accountDropDown()" id="accountDropDown-a">Account</a>
    </div>
    <div id="accountDropDownContent" onclick="accountDropDownClick()">
    </div>
Code:
function accountDropDown() {
    if(accountDrop == 0) {
        document.getElementById("accountDropDownContent").style.display="block";
        accountDrop = 1;
    }
    else {
        document.getElementById("accountDropDownContent").style.display="none";
        accountDrop = 0;
    }
}

window.onclick = function(event) {
    if(!event.target.matches("#accountDropDown-a") && !event.target.matches("#accountDropDownContent")) {
        document.getElementById("accountDropDownContent").style.display="none";   
        accountDrop = 0;   
    }
}
Das "!event.target.matches("#accountDropDownContent")" War jetzt eigentlich das Einzige, was mir eingefallen ist, was ich machen könnte. Leider hilft das nicht. Wie könnte ich das sonst noch machen?
CSS habe ich jetzt mal weggelassen, da das in dem Fall unnötig ist...
PS: Kann gut sein, dass das sehr schlecht gelöst ist, da meine letzte gute/aufwändige Webseite schon länger her ist. Darum bitte nicht mit Kritik sparen ^^
 

basti1012

Aktives Mitglied
26 November 2017
646
54
28
37
Minden
chat.sebastian1012.bplaced.net
#2
Was meinst du genau .Es ist immer mist da durch zusteigen wenn man nur Code stückchen hat. Wenn ich auf accound klicke geht ein div auf und auch wieder zu.Das soll wohl so sein oder ? Du mußt das etwas genauer erklären .Zumindest für mich. In einer Css kann auch ein Fehler stecken .Aber in diesen Fall wohl nicht
 
2 August 2017
118
1
18
21
#3
Ich habe im DropDownContent verschiedene Checkboxen. Da ist das Problem, dass wenn ich eine Checkbox auswähle, sich das DropDown schließt
 

Aaron3219

Aktives Mitglied
6 Oktober 2015
864
177
43
17
#6
Eigentlich kannst du da auf alles verzichten, wenn du einfach:
JavaScript:
<div id="dropDownButtons">
     <a onclick="$('#accountDropDownContent').toggle();" id="accountDropDown_a">Account</a>
</div>
<div id="accountDropDownContent"><input type="checkbox" id="check">
</div>
schreibst...

JavaScript:
<a onclick="$('#accountDropDownContent').toggle();" id="accountDropDown_a">Account</a>
ersetzt also all das andere Javascript und gedöns.