• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 66
  • Last Modified:

Adding Extra Information box

I want to add on my webpage an "Click for more information"
For example:
Click for more info
And when someone clicks it a div appears with text, is there any way I could do this?
0
Jazzy 1012
Asked:
Jazzy 1012
1 Solution
 
leakim971PluritechnicianCommented:
With jQuery :
jQuery(function($) {
   $(".link_class").click(function(evt) {
         evt.preventDefault();
         $("#div_id").toggle();
   });
});

<a href="/fake" class="link_class">read more</a>
0
 
Jazzy 1012Author Commented:
I did this so far and it isnt working
	<div id="post">
<span class="collapsed">
 <a href="javascript:void(0)"> About>></a>
 <p> Hey how are you </p>
</span>

<span class="expanded">
 <a href="javascript:void(0)">Less>></a>
</span>
</div>

Open in new window


And my JS code is:
$(document).ready(function() {
    $(".expanded").hide();

    $(".expanded a, .collapsed a").click(function(eve) {
        var $container = $(this).parents("div");
        eve.preventDefault();
        $container.children(".expanded, .collapsed").toggle();
    });
});

Open in new window


It shows the About and the less and the hey how are you. I want the Hey how are you to hide unless the user clicks the about, then the about to change to less when you reclick it and everything goes.
0
 
Ryan HerndonWeb DeveloperCommented:
You can do this with the help of JavaScript/jQuery. My apologies, I'm typing this on my phone so there may be some errors, but hopefully it points you in the right direction.

Your button: <a href="#" class="your_classname">Click here for more info</a>

Your hidden div: <div id="div_id_here">content content content</div>

Hide the div by default: $('div_id_here').hide();

Bind the toggle event to the button:
$('your_classname').click(function(){
$('div_id_here').toggle();
return false;
});
0
 
Julian HansenCommented:
Here is a way to do it without JavaScript / JQuery
CSS
<style type="text/css">
.infobox p {
  padding: 15px;
}
.infobox {
  border: 0;
  border-radius: 10px;
  height: 0;
  overflow: hidden;
  box-sizing: content-box;
}
input[type="checkbox"] {
  display: none;
}

input:checked + .infobox {
  height: auto;
  border: 1px dashed #428bca;
}
</style>

Open in new window

HTML
  <label for="clickformore">Click for more information</label>
  <input type="checkbox" id="clickformore" name="clickformore" />
  <div class="infobox"><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec facilisis lacus ut sapien sollicitudin vel hendrerit erat tempor. Proin massa justo, rhoncus vel eleifend ac, ultricies eget dui. Etiam sed lorem lacus. Phasellus auctor ultrices sapien. Vestibulum blandit, sapien eget eleifend consequat, nisl nunc pellentesque libero, in adipiscing dui odio a mauris. Curabitur et massa ut dolor aliquet auctor et fringilla lectus. Integer sit amet dolor felis. Suspendisse at magna eget risus gravida suscipit non vitae erat. Aenean dignissim rhoncus nulla, lobortis semper odio gravida vel. Mauris sed leo et tortor semper sagittis.</p></div>

Open in new window

Working sample here
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Ultimate Tool Kit for Technology Solution Provider

Broken down into practical pointers and step-by-step instructions, the IT Service Excellence Tool Kit delivers expert advice for technology solution providers. Get your free copy now.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now