diff options
author | Jörn Zaefferer <joern.zaefferer@gmail.com> | 2009-07-09 11:17:19 +0000 |
---|---|---|
committer | Jörn Zaefferer <joern.zaefferer@gmail.com> | 2009-07-09 11:17:19 +0000 |
commit | a2899b145feecfae98b2338e5b8f5e0415efa76b (patch) | |
tree | 45cd310de41d8ff995a29d4e0d899163c8ee8ba4 /ui | |
parent | f51cdf206cb208948190097b981abf9d4485fc43 (diff) | |
download | jquery-ui-a2899b145feecfae98b2338e5b8f5e0415efa76b.tar.gz jquery-ui-a2899b145feecfae98b2338e5b8f5e0415efa76b.zip |
replacing bgiframe with ui.stackfix, updated dialog and its demos accordingly
Diffstat (limited to 'ui')
-rw-r--r-- | ui/ui.dialog.js | 6 | ||||
-rw-r--r-- | ui/ui.stackfix.js | 46 |
2 files changed, 49 insertions, 3 deletions
diff --git a/ui/ui.dialog.js b/ui/ui.dialog.js index dc10b075d..da7c677c1 100644 --- a/ui/ui.dialog.js +++ b/ui/ui.dialog.js @@ -134,7 +134,7 @@ $.widget("ui.dialog", { self._createButtons(options.buttons); self._isOpen = false; - (options.bgiframe && $.fn.bgiframe && uiDialog.bgiframe()); + (options.stackfix && $.fn.stackfix && uiDialog.stackfix()); (options.autoOpen && self.open()); }, @@ -526,7 +526,7 @@ $.extend($.ui.dialog, { version: "@VERSION", defaults: { autoOpen: true, - bgiframe: false, + stackfix: false, buttons: {}, closeOnEscape: true, closeText: 'close', @@ -596,7 +596,7 @@ $.extend($.ui.dialog.overlay, { height: this.height() }); - (dialog.options.bgiframe && $.fn.bgiframe && $el.bgiframe()); + (dialog.options.stackfix && $.fn.stackfix && $el.stackfix()); this.instances.push($el); return $el; diff --git a/ui/ui.stackfix.js b/ui/ui.stackfix.js new file mode 100644 index 000000000..e789e829c --- /dev/null +++ b/ui/ui.stackfix.js @@ -0,0 +1,46 @@ +/* + * jQuery UI Stackfix @VERSION + * + * Copyright (c) 2008 Brandon Aaron (http://brandonaaron.net) + * to be replaced with...? + * Copyright (c) 2009 AUTHORS.txt (http://jqueryui.com/about) + * + * Dual licensed under the MIT (MIT-LICENSE.txt) + * and GPL (GPL-LICENSE.txt) licenses. + * + * http://docs.jquery.com/Plugins/bgiframe + * to be moved to...? + * http://docs.jquery.com/UI/Stackfix + * + */ + +(function($){ + +// This is only for IE6 +$.fn.stackfix = $.browser.msie && /6.0/.test(navigator.userAgent) ? function(s) { + s = $.extend({ + top : 'auto', // auto == .currentStyle.borderTopWidth + left : 'auto', // auto == .currentStyle.borderLeftWidth + width : 'auto', // auto == offsetWidth + height : 'auto', // auto == offsetHeight + opacity : true, + src : 'javascript:false;' + }, s || {}); + var prop = function(n){return n&&n.constructor==Number?n+'px':n;}, + html = '<iframe class="ui-stackfix"frameborder="0"tabindex="-1"src="'+s.src+'"'+ + 'style="display:block;position:absolute;z-index:-1;'+ + (s.opacity !== false?'filter:Alpha(Opacity=\'0\');':'')+ + 'top:'+(s.top=='auto'?'expression(((parseInt(this.parentNode.currentStyle.borderTopWidth)||0)*-1)+\'px\')':prop(s.top))+';'+ + 'left:'+(s.left=='auto'?'expression(((parseInt(this.parentNode.currentStyle.borderLeftWidth)||0)*-1)+\'px\')':prop(s.left))+';'+ + 'width:'+(s.width=='auto'?'expression(this.parentNode.offsetWidth+\'px\')':prop(s.width))+';'+ + 'height:'+(s.height=='auto'?'expression(this.parentNode.offsetHeight+\'px\')':prop(s.height))+';'+ + '"/>'; + return this.each(function() { + if ( $('> iframe.ui-stackfix', this).length == 0 ) + this.insertBefore( document.createElement(html), this.firstChild ); + }); +} : function() { + return this; +}; + +})(jQuery);
\ No newline at end of file |