2016-11-06 3 views
0

Für mein Online-Portfolio habe ich ein Auswahlfeld erstellt, das als Navigationsleiste für die mobile Ansicht dient. Aus irgendeinem Grund funktioniert mein Code auf jeder Seite außer der About Seite. Damit meine ich, dass die Auswahlbox auf der About-Seite überhaupt nicht geöffnet wird. Auf den anderen Seiten öffnet es sich und leitet Sie durch Klicken auf die ausgewählte Seite entsprechend weiter. Ich habe den Code stundenlang durchforstet und suche nur nach neuen Augen, um mir zu helfen.Wählen Sie Box Nicht funktionsfähig Über Über die Seite

HTML CODE

<header class = "header"> 
     <h1 class="top"> 
      <img src="img/logo2.jpg" alt="logo"/> 
     </h1> 
     <nav class="container" id="navi"> 
      <div class="navbar"> 
      <ul class="nav navbar-nav navbar-right"> 
       <li><a href="index.html">Home</a></li> 
       <li id="about"><a href="about.html">About</a></li> 
       <li><a href="data.html">Data</a></li> 
       <li><a href="visual.html">Visual</a></li> 
      </ul> 
     </div> 
     <select> 
      <option value="" selected="selected">Select</option> 
      <option value="index.html">Home</option> 
      <option value="about.html">About</option> 
      <option value="data.html">Data</option> 
      <option value="visual.html">Visual</option> 
      </select> 
     </nav> 
</header> 

JQUERY CODE

//Create the dropdown base 
$("<select />").appendTo("#navi>.navbar>ul"); 

//Create default option "Go to..." 
$("<option />", { 
    "selected": "selected", 
    "value" : "", 
    "text" : "Go to..." 
}).appendTo("#navi>select"); 

//Populate dropdown with menu items 
$("#navi>.navbar>a").each(function() { 
    var el = $(this); 
    $("<option />", { 
     "value" : el.attr("href"), 
     "text" : el.text() 
    }).appendTo("#navi>select"); 
}); 

//To make the dropdown menu actually work 
$("#navi>select").change(function() { 
    window.location = $(this).find("option:selected").val(); 
}); 

Vielen Dank.

+0

"mein Code funktioniert .. außer" angeben, was meinst du nicht funktioniert. Ist das Auswahl-Tag nicht gefüllt oder funktionieren die Links nicht? Bitte sehen Sie, welche Konsole sagt und was HTML-Ausgabe auswählen. –

+0

Der Benutzer muss in der Lage sein, auf das Auswahlfeld zu klicken, um zu einer anderen Seite zu navigieren. Auf der Seite Info ist das Auswahlfeld jedoch deaktiviert. Ein Klick darauf öffnet es nicht. – dazed03

+0

Meinten Sie dieses Beispiel https://jsfiddle.net/MamdouhFreelancer/p5o6s74m/ –

Antwort

0

Ich wollte nur für jeden veröffentlichen, der später darüber stolpern könnte.

Das JavaScript funktioniert gut. Das Problem besteht darin, dass auf der Seite "Info" ein HTML-Element für das Auswahlfeld vorhanden war, weshalb ich nicht darauf klicken konnte. Ich entdeckte dies mit Inspect Element, dann änderte ich den Z-Index dieses HTML-Elements in einen negativen Wert, so dass es unterhalb der Auswahlbox lag.