Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

JavaScript jQuery Basics (2014) Creating a Mobile Drop Down Menu Perform: Part 1

Cannot see why my code won't work. Please help!

//Problem: It look gross in smaller browser widths and small devices
//Solution: To hide the text links and swap them out with a more appropriate navigation

//Create a select and append to menu
var $select = $("<select></select>");
$("#menu").append($select);

//Cycle over menu links
$("#menu a").each(function(){
  var $anchor = $(this);
  //Create an option
  var $option = $("<option></option>");

  //Option's value is the href
  $option.val($anchor.attr("href"));
  //Option's text is the text of links
  $option.text($anchor.text());
  //Append the option to select
  $select.append($option);
});

//Creat button
//Bind click to button
  //Go to select's location
//Modify CSS to hide links to small widths and show button and select
  //Also hides select and button on larger widths and show links
//Deal with selected options depending on current page
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="css/style.css" type="text/css" media="screen" title="no title" charset="utf-8">
</head>
<body>
    <div id="menu">
        <ul>
            <li class="selected"><a href="index.html">Home</a></li>
            <li><a href="about.html">About</a></li>
            <li><a href="contact.html">Contact</a></li>
            <li><a href="support.html">Support</a></li>
            <li><a href="faqs.html">FAQs</a></li>
            <li><a href="events.html">Events</a></li>
        </ul>
    </div>
    <h1>Home</h1>
    <p>This is the home page.</p>
    <script src="http://code.jquery.com/jquery-1.11.0.min.js" type="text/javascript" charset="utf-8"></script>
    <script src="js/app.js" type="text/javascript" charset="utf-8"></script>
</body>
</html>

I've poured over this what feels like a million times. I still can't see the select bar. What am I doing wrong?!?!

4 Answers

The select menu shows up for me. Could it be possible that you are hiding it in your css?

Also, if possible can you please post a snapshot of your workspace.

Ken Wilson
Ken Wilson
7,885 Points

I have the same code and it shows nothing at all. I didn't change any of the CSS. Shouldn't these tutorials work according to the lecture? Most do not.

Hey Ken, Often times these videos are recorded and then tested. Sometimes bugs are found and the codes are changed. Seldom when this happens but it does happen.

I am not familiar with the CSS code from this project but you'll want to search your css for the following

select {
   /*properties here*/
}

if there is a display property set to none then you will want to change that to inline or inline-block I hope this helps.

It was hidden in the CSS! Thanks for the help!

William Curry
William Curry
4,107 Points

Could you post your CSS fix? I believe I'm having the same problem.

I really didn't fix anything. I realized that what I was doing would only work when the browser is smaller. I kept looking at it full-size, and couldn't see the changes I was making. Try making your browser smaller, and you should see it.