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 trialManpreet Singh
13,014 PointsPlz tell me the answer of this question
Take a moment to read the code in the app.js file. The code should display a modal or pop-over window (built with HTML). In the modal window there should be a place for a message to display and a button to dismiss or close the modal. Check out how the code runs in the preview. There's something wrong. The dismiss button isn't showing in the modal. Can you fix it?
//Create the Modal
var $modal = $("<div id='modal'></div>");
//Create a placeholder for text in the modal
var $placeHolder = $("<p id='placeHolder'></p>");
$modal.append($placeHolder);
//Create a button to dismiss modal and add it to modal
var $dismissButton = $("<button>Dismiss</button>");
//Hide modal when button is pressed
$dismissButton.click(function(){
$modal.hide(300);
});
$("body").append("<button>dismissButton</button>");
//A function to show a modal
function displayModal(message) {
$placeHolder.text(message);
$modal.show();
}
//Show an example modal
displayModal("Hello World!");
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="css/style.css" type="text/css" media="screen" title="no title" charset="utf-8">
<title>Modal Example</title>
</head>
<body>
<h1>Modal Example Page</h1>
<script src="//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>
2 Answers
Steven Ang
41,751 PointsIt's actually very simple. The challenge just want you to add the dismiss button into the modal div.
//Create the Modal
var $modal = $("<div id='modal'></div>");
//Create a placeholder for text in the modal
var $placeHolder = $("<p id='placeHolder'></p>");
$modal.append($placeHolder);
//Create a button to dismiss modal and add it to modal
var $dismissButton = $("<button>Dismiss</button>");
$modal.append($dismissButton); // Just add the button here
//Hide modal when button is pressed
$dismissButton.click(function(){
$modal.hide(300);
});
$("body").append($modal);
//A function to show a modal
function displayModal(message) {
$placeHolder.text(message);
$modal.show();
}
//Show an example modal
displayModal("Hello World!");
Manpreet Singh
13,014 PointsThanks Steven Ang for the help. Sir can you please tell me the best to learn jquery
Steven Ang
41,751 PointsHonestly, there is no best way or right way to learn something, it all depends on the person's personal preference. To me, the best way to learn something is to build a simple project or program to show whether you truly understand what you've learned. Just simply watch tutorial videos is not going to make you a developer rather prove that you know it.
There are times when tutorial videos are not the best solution to solve problems; this is when the official documentation comes to the rescue. It's an essential skill for developers to read the doc, just like what Andrew said in jQuery Basics. In jQuery Basics, Andrew is using the doc to solve the problems; this is how a developer work in the real world - they search solution typically using the search engine or use the doc. It may be seen daunting at first, but once you got used to it and everything will be okay.
In conclusion, building a simple project after each course and using the official doc to solve problems are the best way to learn. I hope my comment satisfies your question and have fun coding!