aboutsummaryrefslogtreecommitdiffstats
path: root/ui
diff options
context:
space:
mode:
authorJörn Zaefferer <joern.zaefferer@gmail.com>2009-07-09 11:17:19 +0000
committerJörn Zaefferer <joern.zaefferer@gmail.com>2009-07-09 11:17:19 +0000
commita2899b145feecfae98b2338e5b8f5e0415efa76b (patch)
tree45cd310de41d8ff995a29d4e0d899163c8ee8ba4 /ui
parentf51cdf206cb208948190097b981abf9d4485fc43 (diff)
downloadjquery-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.js6
-rw-r--r--ui/ui.stackfix.js46
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