$(function() { //alert($(window).height()); $('#clickmenu').click(function() { $('#x_menu').center(); $('.bg').show(); $('#x_menu').fadein(); }); $('#closebt').click(function() { $('#x_menu').hide(); $('.bg').hide(); }); $('.bg').click(function() { $('#x_menu').hide(); $('.bg').hide(); }); /*var val=$(window).height(); var codeheight=$("#code").height(); var topheight=(val-codeheight)/2; $('#code').css('top',topheight);*/ jquery.fn.center = function(loaded) { var obj = this; body_width = parseint($(window).width()); body_height = parseint($(window).height()); block_width = parseint(obj.width()); block_height = parseint(obj.height()); left_position = parseint((body_width / 2) - (block_width / 2) + $(window).scrollleft()); if (body_width < block_width) { left_position = 0 + $(window).scrollleft(); }; top_position = parseint((body_height / 2) - (block_height / 2) + $(window).scrolltop()); if (body_height < block_height) { top_position = 0 + $(window).scrolltop(); }; if (!loaded) { obj.css({ 'position': 'absolute' }); obj.css({ 'top': ($(window).height() - $('#x_menu').height()) * 0.5, 'left': left_position }); $(window).bind('resize', function() { obj.center(!loaded); }); $(window).bind('scroll', function() { obj.center(!loaded); }); } else { obj.stop(); obj.css({ 'position': 'absolute' }); obj.animate({ 'top': top_position }, 200, 'linear'); } } })