blog.exotec

TYPO3 . XHTML/CSS . JavaScript/AJAX . iPhone/iOS

Fancybox iframe mit dynamischer Größe

Dazu findet man bislang nur wenige hilfreiche Informationen. Hier bin ich irgendwann auf eine funktionierende Lösung gestoßen. Nur funktioniert eval() und auch window.top im Safari leider nicht. eval() wird aber auch gar nicht benötigt udn statt window.tp muss man nur window.parent verwenden, dann läuft es auch im Safari.

Hier der Code wie er bei mir nun läuft:

$(document).ready(function(){
	var w = $('body').width();
	var h = $('body').height();
	fb_resize(w,h);
});
function fb_resize(w,h) {
  var topWinHeight = window.parent.$('body').height();
  if (w > 0 || h > 0) {
  	// if content > viewport of browser
  	if(h > topWinHeight) {
		h = parseInt(topWinHeight)-120;
  	}
	window.parent.$("#fancybox-content").css( "height", h+"px");
	window.parent.$("#fancybox-content").css( "width", w+"px");
	// adds padding values to the height of parent window
	th = parseInt(h)+20;
	tw = parseInt(w)+20;
	window.parent.$("#fancybox-wrap").css( "width", tw+"px");
	window.parent.$("#fancybox-wrap").css( "height", th+"px");
	window.parent.$.fancybox.resize();
  }
}

Wenn man auf meiner neuen T3Touch Seite das Anmeldeformular öffnet, und dieses dann einfach mal ohne Angaben absendet, kann man das Script in Action sehen.

Kommentar schreiben:


88,822 Spam-Kommentare
blockiert von
Akismet