Solved

jquery expand and align

Posted on 2012-03-31
2
281 Views
Last Modified: 2012-04-08
Hello Experts,

I really need a help from an expert here!

I have a photo. On that photo i placed a circles with numbers using css absolute positions.
When the user mouse-over a circle the circle expands around 1.5 times (e.g. the initial size of a circle is 16px on 16px and it grows to 24px on 24px.

The problem.....

The number on the circles are horizontally center-aligned using the css text-align:center.
When the circle expands the numbers should also be vertically align.

I tried varied options using padding-top and or increasing line-height but nothing seem to work smoothly.

Here is just a part of the script i am using to expand the circle. If you have a good idea i would be thankful!

  var $position;
  $('.map-bullet').mouseenter(function(){
    $position = $(this).position();

    $(this).stop().animate({
       width: 24,
       height: 24,
       top: ($position.top - (8/2)), left: ($position.left -(8/2))}, 100);
	
}).mouseleave(function() {

   $(this).stop().animate({
        width: 16,
       height: 16,
       top: $position.top, left: $position.left}, 100);

Open in new window

0
Comment
Question by:Refael
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
2 Comments
 
LVL 38

Accepted Solution

by:
Tom Beck earned 500 total points
ID: 37792310
You were on the right track with line-height, however, as the circle expands, you must also increase the line-height then set it back to 16 on mouseleave.

var $position;
    $('.map-bullet').mouseenter(function(){
        $position = $(this).position();

        $(this).stop().animate({
            width: 24,
            height: 24,
            top: ($position.top - (8/2)), left: ($position.left -(8/2)), 'line-height':'24px'}, 100);
      
    }).mouseleave(function() {

        $(this).stop().animate({
            width: 16,
            height: 16,
            top: $position.top, left: $position.left, 'line-height':'16px'}, 100);
    });
0
 

Author Closing Comment

by:Refael
ID: 37821871
Thank you!
0

Featured Post

SharePoint Admin?

Enable Your Employees To Focus On The Core With Intuitive Onscreen Guidance That is With You At The Moment of Need.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Requirements JQuery 1.6+ HTML CSS Introduction This article was inspired by an EE question (http://www.experts-exchange.com/Programming/Languages/Scripting/JavaScript/Q_28372511.html) on how to make a page show some balloons animate up a page…
Today, the web development industry is booming, and many people consider it to be their vocation. The question you may be asking yourself is – how do I become a web developer?
The viewer will learn how to dynamically set the form action using jQuery.
The viewer will learn the basics of jQuery, including how to invoke it on a web page. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery.: (CODE)
Suggested Courses

628 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question