//Funktion um die echten Abmaßungen des Bildes zu erhalten function getImgSize(imgSrc, callback) { var newImg = new Image(); newImg.onload = function() { var imgWidth=newImg.width; var imgHeight=newImg.height; //Setze die echte Breite, sofern diese nicht breiter ist als der aktuelle Bildausschnitt if(imgWidth>jQuery(window).width()){ //Berechne die neue Höhe indem die natürliche Höhe mal einem Faktor genommen wird der sich aus natürliche Breite / Bildausschnit Breite ergibt var neoHeight=imgHeight*(jQuery(window).width()/imgWidth); jQuery('#polaroid_lightbox img[src="'+imgSrc+'"]').css('width',jQuery(window).width()); jQuery('#polaroid_lightbox, #polaroid_lightbox img[src="'+imgSrc+'"]').css('height',neoHeight); } else{ jQuery('#polaroid_lightbox img[src="'+imgSrc+'"]').css('width',imgWidth); jQuery('#polaroid_lightbox, #polaroid_lightbox img[src="'+imgSrc+'"]').css('height',imgHeight); } //Mache Callback, NACHDEM die obigen Operationen abgeschlossen sind callback(); } newImg.src = imgSrc; // this must be done AFTER setting onload } function close_lightbox(){ //Lasse die Lightbox langsam verschwinden und entferne den HTML-Coode dafür aus dem DOM jQuery('#polaroid_wrapper,#the_shadow').fadeOut('slow',function(){jQuery('#polaroid_wrapper, #the_shadow').remove();}); } function set_widthes(img_nr){ var img_src=jQuery('#image_lightbox[data-img_nr="'+img_nr+'"]').attr('src'); //Setze die Dimensionen des Bildes var img_dimensions=getImgSize(img_src,function(){ //Setze die top position der Lightbox jQuery('#polaroid_wrapper').css('right',((jQuery(window).width()/2)-(jQuery('#polaroid_wrapper').width()/2))); //Setze die Höhe des DIVs - 2px für den Rahmen jQuery('#polaroid_lightbox').css('height',(jQuery('#image_lightbox[data-img_nr="'+img_nr+'"]').css('height')-2)); // Setze den negativen margin und die breite für den Beschreibungstext jQuery('#text_lightbox').css('width',jQuery('#image_lightbox[data-img_nr="'+img_nr+'"]').css('width')+'px'); // Add left&right controls in image var wrapper_post=jQuery('#polaroid_wrapper').offset(); var nav_string=''; console.log('Img nr: '+img_nr); if(img_nr>1){ nav_string+=''; } var anz=jQuery('#polaroid_lightbox img').length; console.log('Anzahl: '+anz); if(img_nr>'; } jQuery('#lightbox_big_nav').html(nav_string); }); } function toggle_images(act_number,direction){ //act_number=parseInt(act_number); if(direction=='-'){act_number--;} else{act_number++;} jQuery('#polaroid_wrapper img#image_lightbox').removeAttr('id').fadeOut('slow'); jQuery('#polaroid_wrapper #text_lightbox').removeAttr('id').fadeOut('slow',function(){ jQuery('#polaroid_wrapper').css('right',0); jQuery('#polaroid_wrapper img[data-img_nr="'+act_number+'"]').attr('id','image_lightbox'); jQuery('#polaroid_wrapper div[data-img_nr="'+act_number+'"]').attr('id','text_lightbox'); jQuery('#polaroid_wrapper img[data-img_nr="'+act_number+'"]').fadeIn('slow'); jQuery('#polaroid_wrapper div[data-img_nr="'+act_number+'"]').fadeIn('slow',set_widthes(act_number)); }); } function lightbox_nav(){ } jQuery(function(){ jQuery('.lightbox').mouseover(function(){jQuery('.lightbox').css('cursor','pointer')}); jQuery('.lightbox').click(function(){ var doc_height=jQuery('body').height(); if(doc_heightX'; //Bild var lightbox_elem=jQuery('.lightbox').length; var i=1; jQuery('.lightbox').each(function(){ prepend_string+=' Anzeigen, sonst verstecken if(jQuery(this).attr('src')==clicked_element_src){prepend_string+='display:block;"id="text_lightbox"';} else{prepend_string+='display:none;"';} //Setze Data-attr zum idetifizieren prepend_string+=' data-img_nr="'+i+'" class="descr_text">'; if(i>1){prepend_string+=' ';} prepend_string+='('+i+'/'+lightbox_elem+')'; if(i>';} //Leerzeichen zwischen den Schaltflächen und eventuellem Text prepend_string+=' '; //Hat das Bild eine Beschreibung (entweder als Figcaption bei einem Figure-Element oder als title im img-Tag) if((jQuery(this).parent().prop("tagName")=='FIGURE' && jQuery(this).parent().siblings('figcaption').length > 0)|| (jQuery(this).attr('title')!='' && jQuery(this).attr('title')!=undefined)){ //Befindet sich das zu vergrößernde Bild in einem Figure? if(jQuery(this).parent().prop("tagName")=='FIGURE' && jQuery(this).parent().siblings('figcaption').length > 0){ //Hole die Figcaption prepend_string+=jQuery(this).parent().siblings('figcaption').html(); } //Ansonsten.. else{ //..hole Title prepend_string+=jQuery(this).attr('title'); } } prepend_string+=''; i++; }); //Schließe #polaroid_wrapper #polaroid_wrapper + #the_shadow prepend_string+=''; //Abdunkler DIV prepend_string+=''; //Setze die Lightbox vor alle anderen Elemente im Body ein jQuery('body').prepend(prepend_string); set_widthes(jQuery('#image_lightbox').data('img_nr')); //Lasse die Lightbox einfaden jQuery('#the_shadow, #polaroid_wrapper').fadeIn('slow'); //Setze die top position der Lightbox jQuery('#polaroid_wrapper').css('top',jQuery(document).scrollTop()); // Setze den negativen margin und die breite für den Beschreibungstext //jQuery('#text_lightbox').css('width',jQuery('#image_lightbox').width()+'px'); }); }); //Wenn die Größe des Fensters sich ändert jQuery(window).resize(function(){ if(jQuery('#the_shadow').length>0){ //Setze die Breite des Shadows, falls die Fenstergröße verändert wird, damit nicht ggf durch Scrollen Blitzer auftauchen können var doc_height=jQuery('body').height(); if(doc_height