1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
|
var $mask = $('<div id="mask"/>').appendTo('body'),
$overlay = $('<div id="overlay"/>').appendTo('body'),
$overlayContent = $('<div id="overlayContent"/>').appendTo($overlay),
function overlayCreate( mode, type, sources, title, description ) {
$.data($overlay[0], 'mode', mode);
$otitle[0].innerHTML = title;
$odescription[0].innerHTML = description;
var top = $win.scrollTop() + $win.height()/2;
$mask.css('height', $(document).height()).fadeIn(400, function(){
$overlayLoader.css( 'top', top ).show();
if( type === 'photo' ) {
//IE fix to force load image
if( msie ) {
$overlay.css({ visibility: 'hidden', display: 'block' });
$overlayContent.css({ visibility: 'hidden', display: 'block' });
}
var $image = $('<img src="'+ sources.text() +'" alt="" />').appendTo($overlayContent);
$image[0].onload = function(){
resizeImage( $image[0] );
if( msie ) {
$overlay.css({ visibility: 'visible', display: 'none' });
$overlayContent.css({ visibility: 'visible', display: 'none' });
}
overlayShow( $image[0].width, $image[0].height, top);
};
}
});
}
function overlayShow( ow, oh, top ) {
$overlay.css({ display: 'block', visibility: 'hidden', width: ow });
$overlayContent.show();
var captionHeight = $overlay.find('div.details').height() + 20,
marginTop = -(oh + captionHeight + 40)/2,
marginLeft = -(ow + 40)/2,
mode = $.data($overlay[0], 'mode'),
itemIndex = mode === 'coverflow' ? index : thumbIndex;
$overlayContent.hide();
} |
Partager