Author: pyaschenko
Date: 2010-02-04 07:21:48 -0500 (Thu, 04 Feb 2010)
New Revision: 16408
Modified:
root/framework/trunk/impl/src/main/resources/META-INF/resources/jquery.position.js
Log:
default values improvements
Modified:
root/framework/trunk/impl/src/main/resources/META-INF/resources/jquery.position.js
===================================================================
---
root/framework/trunk/impl/src/main/resources/META-INF/resources/jquery.position.js 2010-02-04
00:43:22 UTC (rev 16407)
+++
root/framework/trunk/impl/src/main/resources/META-INF/resources/jquery.position.js 2010-02-04
12:21:48 UTC (rev 16408)
@@ -19,7 +19,9 @@
}
var params = params || {};
- var options = $.extend({}, defaults, $.PositionTypes[params.type || defaults.type],
params);
+ var def = params.type || params.from || params.to ? $.PositionTypes[params.type ||
defaultType] : {noPositionType:true};
+
+ var options = $.extend({}, defaults, def, params);
return this.each(function() {
element = $(this);
//alert(rect.left+" "+rect.top+" "+rect.width+"
"+rect.height);
@@ -28,8 +30,8 @@
}
};
+ var defaultType = "TOOLTIP";
var defaults = {
- type: "TOOLTIP",
collision: "",
offset: [0,0]
};
@@ -222,29 +224,39 @@
var width = element.width();
var height = element.height();
+ rect.width = rect.width || 0;
+ rect.height = rect.height || 0;
+
var left = cropPx(element.css('left'));
if (isNaN(left)) {
left = 0;
element.css('left', '0px');
+ rect.left = rect.left || left;
}
var top = cropPx(element.css('top'));
if (isNaN(top)) {
top = 0;
element.css('top', '0px');
+ rect.top = rect.top || top;
}
var elementOffset = element.offset();
+ var pos = {};
+ if (options.noPositionType) {
+ pos.left = rect.left + rect.width + options.offset[0];
+ pos.top = rect.top + options.offset[1];
+ } else {
+ var jqw = $(window);
+ var winRect = {left:jqw.scrollLeft(), top:jqw.scrollTop()};
+ winRect.right = winRect.left + jqw.width();
+ winRect.bottom = winRect.top + jqw.height();
- var jqw = $(window);
- var winRect = {left:jqw.scrollLeft(), top:jqw.scrollTop()};
- winRect.right = winRect.left + jqw.width();
- winRect.bottom = winRect.top + jqw.height();
-
- var pos = calculatePosition(rect, options.offset, winRect, {width:width,
height:height}, options);
+ pos = calculatePosition(rect, options.offset, winRect, {width:width, height:height},
options);
+ }
pos.left -= elementOffset.left;
- pos.top -= elementOffset.top;
+ pos.top -= elementOffset.top;
element.css('left', (pos.left + 'px')).css('top', (pos.top +
'px'));
};
Show replies by date