Facebook Style Profile Info Tooltip using jQuery & CSS

I have got lots of emails from my readers asked that how to design a facebook style profile tooltip with cover page,profile picture, name, headline, add as friend & send message button..

Here I had explained a very basic version of facebook profile tooltip with all features they have asked.

You can use this script in your web & social networking projects with little customization.

I hope you all like this.. 🙂 thanks

Facebook Style Profile Tooltip with add as friend button

Contents

CSS Code

body {
margin:0;
padding:0;
background: #e8ebed;
}
.container { margin:0 auto; width:50%; background:#fff; padding:20px; }
#profile-tip {
background: #fff;
border: 1px solid #BFBFBF;
width: 300px;
margin: 0 auto;
border-radius: 3px;
position: absolute;
display: none;
padding: 0 0 10px 0;
}
.profile-tip-padding {
padding: 20px 10px 10px 10px;
}
.profile-tip-cover img {
width: 100%;
height:100px;
}
.profile-tip-avatar {
text-align: left;
margin-top: -45px;
cursor:pointer;
margin-left:10px;
}
.profile-tip-avatar img {
width: 75px;
height: 75px;
padding:1px; border:1px solid #ccc;
background:#ccc;
cursor:pointer;
}
.profile-tip-info {
text-align: center;
}
.profile-tip-info .cover-username {
float: none;
margin-top: -55px;
margin-left:-20px;
font-size:16px;
font-weight:bold;
}
.profile-tip-info .cover-headline {
float: none;
margin-top: 10px;
margin-left:30px;
font-size:14px;
color:#333;
}
.profile-tip-info a { color:#fff; text-decoration:none; }
.profile-tip-buttons {
padding: 0 10px 0 10px;
overflow: auto;
}
.profile-tip-buttons-container {
width: 60px;
margin: 0 auto;
}
.profile-tip-divider {
width: 280px;
height: 1px;
background: #dee0e3;
margin: 10px auto;
}
.profile-tip-bio {
padding: 0 10px;
color: #AAA;
text-align: right;
}

.msg_body
{
min-height:70px;
margin-bottom:10px;
border-bottom:solid 1px #fafafa;
}
.msg_img img
{
float:left;
height:50px;
width:50px;
border:solid 1px #dedede;
padding:5px;
cursor:pointer;
}
.msg_text
{
margin-left:70px;
min-height:50px;
word-wrap:break-word;
overflow:hidden;
padding:5px;
display:block;
font-size:12px;
font-family:Verdana, Geneva, sans-serif;
}
.time { font-size:12px; font-style:italic; color:#999; }
.loader { background: url('loader.gif'); }

jQuery Code

function FacebookprofileTip(post, delay) {

if(delay == 1) {
clearInterval(TipTimer);
} else {
TipTimer = setInterval(function(){

var msgType = 'message';
// The position to be increased
var height = 58;
var left = 20;

// Start displaying the profile card with the preloader
$('#profile-tip').show();
$('#profile-tip').html('<div class="profile-tip-padding"><div class="loader"></div></div>');

// Get the position of the parent element
var position = $("#"+msgType+post).position();
// Store the position into an array
var pos = {
top: (position.top + height) + 'px',
left: (position.left + left) + 'px'
};

// Set the position of the profile card
$('#profile-tip').css(pos);
$.ajax({
type: "POST",
url: "fetch_profile.php",
cache: false,
success: function(html) {
$('#profile-tip').html(html);
}
});
clearInterval(TipTimer);
}, 500);
}
}
$(document).ready(function() {
$('#profile-tip').mouseleave(function() {
$('#profile-tip').hide();
});
});

HTML Code

<div class="msg_body" id="message1">
<div class="msg_img">
<img onmouseover="FacebookprofileTip(1, 0)" onmouseout="FacebookprofileTip(0, 1);" onclick="FacebookprofileTip(0, 1);" src="http://0.gravatar.com/avatar/82620dd66b22b34a915303b93b92929b" />
</div>
<div class="msg_text">
w3lessons.info Programming Blog <a href="http://www.w3lessons.info">http://w3lessons.info</a>
<div class="time">5 seconds ago</div>
</div>
</div>
<div id="profile-tip"></div>

Div  id=”message1”  – where message1 – 1 stands for message id for unique tooltip creations

fetch_profile.php

<div class="profile-tip-cover"><img src="https://fbcdn-sphotos-e-a.akamaihd.net/hphotos-ak-frc3/311522_4373718103997_1253579792_n.jpg">
</div>
<div class="profile-tip-avatar"> <a href="http://www.facebook.com/itzurkarthi" target="_blank"><img src="https://fbcdn-profile-a.akamaihd.net/hprofile-ak-ash3/c0.45.180.180/s160x160/581450_4755153199636_1162983977_a.jpg" /></a> </div>
<div class="profile-tip-info"> <a href="http://www.facebook.com/itzurkarthi">
<div class="cover-username">Karthikeyan K</div>
<div class="cover-headline">Founder @ w3lessons.info</div>
</a> </div>
<div class="profile-tip-divider"></div>
<div class="profile-tip-bio"><a class="uibutton confirm" href="http://www.facebook.com/itzurkarthi" target="_blank">Add as Friend</a> <a class="uibutton" href="http://www.facebook.com/itzurkarthi" target="_blank">Send Message</a></div>

You can pass the user id to fetch_profile.php to show different content with mysql as backend using jQuery Ajax.

View Live Demo & Download

Please don’t forget to share and subscribe to latest updates of the blog.

Thanks!

You May Also Like

Never Miss Any Web Tutorials, Guides, Tips and Free eBooks

Join Our Community Of 50,000+ Web Lovers and get a weekly newsletter in your inbox

 

I hate spam too. Unsubscribe at any time.

9 thoughts on “Facebook Style Profile Info Tooltip using jQuery & CSS”

  1. I have downloaded the script and the script itself works fine when we put in the images. However, please what is the purpose of the post field ? THANKS

    Reply

Leave a Comment