Facebox is a Facebook lightbox like pop-up box that displays any content or image in a pop-up box. This widget can be used for displaying any kind of content in blogger. The credit for making this fantastic pop up box script goes to FamSpam.com and I would thank Dynamic Drive for Sharing it! i am too using this on my blog on the feed subscription links and other places. You can view the demo right here.
- You can see the demo on the top navigation links on my page
I am providing with a method to use it on your blogger blog without hosting any javascripts or CSS files or even images anywhere, just copy and paste the code and you are done!
Note- The code would be big to see because i am uploading javascripts in blogger itselfTo add this feature to your template follow these steps:
- Go to Blogger dashboard> Layout edit HTML section
- Copy and paste this code just above </head> section in your template.
<script type='text/javascript'>
//<![CDATA[
/*
* Facebox (for jQuery)
* version: 1.1 (03/01/2008)
* @requires jQuery v1.2 or later
*
* Examples at http://famspam.com/facebox/
*
* Licensed under the MIT:
* http://www.opensource.org/licenses/mit-license.php
*
* Copyright 2007, 2008 Chris Wanstrath [ chris@ozmm.org ]
*
* Usage:
*
* jQuery(document).ready(function() {
* jQuery('a[rel*=facebox]').facebox()
* })
*
* <a href="#terms" rel="facebox">Terms</a>
* Loads the #terms div in the box
*
* <a href="terms.html" rel="facebox">Terms</a>
* Loads the terms.html page in the box
*
* <a href="terms.png" rel="facebox">Terms</a>
* Loads the terms.png image in the box
*
*
* You can also use it programmatically:
*
* jQuery.facebox('some html')
*
* This will open a facebox with "some html" as the content.
*
* jQuery.facebox(function() { ajaxes })
*
* This will show a loading screen before the passed function is called,
* allowing for a better ajax experience.
*
*/
(function($) {
$.facebox = function(data, klass) {
$.facebox.init()
$.facebox.loading()
$.isFunction(data) ? data.call($) : $.facebox.reveal(data, klass)
}
$.facebox.settings = {
loading_image : 'http://i642.photobucket.com/albums/uu149/ujujjaval/loadinggt6.gif',
close_image : 'http://i642.photobucket.com/albums/uu149/ujujjaval/closelabelpn7.gif',
image_types : [ 'png', 'jpg', 'jpeg', 'gif' ],
facebox_html : '\
<div id="facebox" style="display:none;"> \
<div class="popup"> \
<table> \
<tbody> \
<tr> \
<td class="tl"/><td class="b"/><td class="tr"/> \
</tr> \
<tr> \
<td class="b"/> \
<td class="body"> \
<div class="header"> \
<a style="text-align:right;" href="#" class="close"> \
<img src="http://i642.photobucket.com/albums/uu149/ujujjaval/closelabelpn7.gif" title="close" class="close_image" /> \
</a> \
</div> \
<div class="content"> \
</div> \
<div class="footer"> \
<a href="http://technotricksng.blogspot.com/"> \
Get This \
</a> \
</div> \
</td> \
<td class="b"/> \
</tr> \
<tr> \
<td class="bl"/><td class="b"/><td class="br"/> \
</tr> \
</tbody> \
</table> \
</div> \
</div>'
}
$.facebox.loading = function() {
if ($('#facebox .loading').length == 1) return true
$('#facebox .content').empty()
$('#facebox .body').children().hide().end().
append('<div class="loading"><img src="'+$.facebox.settings.loading_image+'"/></div>')
var pageScroll = $.facebox.getPageScroll()
$('#facebox').css({
top: pageScroll[1] + ($.facebox.getPageHeight() / 10),
left: pageScroll[0]
}).show()
$(document).bind('keydown.facebox', function(e) {
if (e.keyCode == 27) $.facebox.close()
})
}
$.facebox.reveal = function(data, klass) {
if (klass) $('#facebox .content').addClass(klass)
$('#facebox .content').append(data)
$('#facebox .loading').remove()
$('#facebox .body').children().fadeIn('normal')
}
$.facebox.close = function() {
$(document).trigger('close.facebox')
return false
}
$(document).bind('close.facebox', function() {
$(document).unbind('keydown.facebox')
$('#facebox').fadeOut(function() {
$('#facebox .content').removeClass().addClass('content')
})
})
$.fn.facebox = function(settings) {
$.facebox.init(settings)
var image_types = $.facebox.settings.image_types.join('|')
image_types = new RegExp('\.' + image_types + '$', 'i')
function click_handler() {
$.facebox.loading(true)
// support for rel="facebox[.inline_popup]" syntax, to add a class
var klass = this.rel.match(/facebox\[\.(\w+)\]/)
if (klass) klass = klass[1]
// div
if (this.href.match(/#/)) {
var url = window.location.href.split('#')[0]
var target = this.href.replace(url,'')
$.facebox.reveal($(target).clone().show(), klass)
// image
} else if (this.href.match(image_types)) {
var image = new Image()
image.onload = function() {
$.facebox.reveal('<div class="image"><img src="' + image.src + '" /></div>', klass)
}
image.src = this.href
// ajax
} else {
$.get(this.href, function(data) { $.facebox.reveal(data, klass) })
}
return false
}
this.click(click_handler)
return this
}
$.facebox.init = function(settings) {
if ($.facebox.settings.inited) {
return true
} else {
$.facebox.settings.inited = true
}
if (settings) $.extend($.facebox.settings, settings)
$('body').append($.facebox.settings.facebox_html)
var preload = [ new Image(), new Image() ]
preload[0].src = $.facebox.settings.close_image
preload[1].src = $.facebox.settings.loading_image
$('#facebox').find('.b:first, .bl, .br, .tl, .tr').each(function() {
preload.push(new Image())
preload.slice(-1).src = $(this).css('background-image').replace(/url\((.+)\)/, '$1')
})
$('#facebox .close').click($.facebox.close)
$('#facebox .close_image').attr('src', $.facebox.settings.close_image)
}
// getPageScroll() by quirksmode.com
$.facebox.getPageScroll = function() {
var xScroll, yScroll;
if (self.pageYOffset) {
yScroll = self.pageYOffset;
xScroll = self.pageXOffset;
} else if (document.documentElement && document.documentElement.scrollTop) { // Explorer 6 Strict
yScroll = document.documentElement.scrollTop;
xScroll = document.documentElement.scrollLeft;
} else if (document.body) {// all other Explorers
yScroll = document.body.scrollTop;
xScroll = document.body.scrollLeft;
}
return new Array(xScroll,yScroll)
}
// adapter from getPageSize() by quirksmode.com
$.facebox.getPageHeight = function() {
var windowHeight
if (self.innerHeight) { // all except Explorer
windowHeight = self.innerHeight;
} else if (document.documentElement && document.documentElement.clientHeight) { // Explorer 6 Strict Mode
windowHeight = document.documentElement.clientHeight;
} else if (document.body) { // other Explorers
windowHeight = document.body.clientHeight;
}
return windowHeight
}
})(jQuery);
//]]>
</script>
<script type='text/javascript'>
jQuery(document).ready(function($) {
$('a[rel*=facebox]').facebox()
})
</script>
<script src='http://ads.googlecode.com/files/jquery-1.2.2.pack.js' type='text/javascript'/>
<style>
#facebox .b { background:url(http://i642.photobucket.com/albums/uu149/ujujjaval/94484389sa1.png);}
#facebox .tl { background:url(http://i642.photobucket.com/albums/uu149/ujujjaval/tlsd4.png);}
#facebox .tr { background:url(http://i642.photobucket.com/albums/uu149/ujujjaval/trxw1.png);}
#facebox .bl { background:url(http://i642.photobucket.com/albums/uu149/ujujjaval/blnk5.png);}
#facebox .br { background:url(http://i642.photobucket.com/albums/uu149/ujujjaval/brgw6.png);}
#facebox { position: absolute;width:100%;top:0;left: 0;z-index: 100;text-align: left;}
#facebox .popup { position: relative;}
#facebox table { margin: auto; border-collapse: collapse;}
#facebox .body { padding: 10px; background: #fff; width: 370px;}
#facebox .loading {text-align: center;}
#facebox .image {text-align: center;}
#facebox img {border: 0;}
#facebox .footer {border-top: 1px solid #DDDDDD;padding-top: 5px; margin-top: 10px;
text-align: right;}
#facebox .header {padding-top: 0px; margin-top: 0px; text-align: right;}
#facebox .tl, #facebox .tr, #facebox .bl, #facebox .br {height: 10px; width: 10px;
overflow: hidden;padding: 0;}
.current_page_item {background:#dee5e5;color:#2299ff;}
</style>
- Display an image using Facebox: If you want to display images using facebox, use the following code;
<p><a href="http://www.x.com/image.jpg" rel="facebox"> Wolverine Hacks</a></p>
- FaceBox used to display an inline DIV: This is the most useful code. It can be used to display text notes, announcement, disclaimer, contact form and so on... In this case a link is placed on your blog and when you click on that link, the pop up (like facebook) appears.
<p><a href="#mydiv" rel="facebox">View DIV with id="mydiv" on the page</a></p><div id="mydiv" style="display:none">This is the contents of a hidden DIV on the blog, with ID="mydiv" and style set to "display:none" <br /><a="http://www.link-address.com">Link name</a></div>3. FaceBox used to display an external page, plus apply a CSS class to the container (to further style it): It is like previous one only, but with more styling is added to the pop up.
<style type="text/css">.thickstyle{background: silver;}</style>"<p><a href="external.htm" rel="facebox[.thickstyle]">View "External.htm" fetched via Ajax, further styled with ".thickstyle" CSS class</a></p>Note: Set href attribute point it to any external link, It will not Work.
That's all you need to do. If you like this post please comment and give feedback!
hhhBlogger widget,Pop-up widget,blogger,Facebook style,lightbox,facebox, jquery gadget,popup box




