Permalink
Browse files

Merge pull request #953 from dnschnur/jquery-chainable

Added the plot function as a chainable property.
  • Loading branch information...
2 parents 1cb170d + a787fa4 commit 410dd7dbef8a5db7b4b9ce4c40ac1630a19cb781 @dnschnur dnschnur committed Feb 9, 2013
Showing with 21 additions and 0 deletions.
  1. +8 −0 API.md
  2. +3 −0 NEWS.md
  3. +10 −0 jquery.flot.js
View
8 API.md
@@ -15,6 +15,14 @@ don't use for anything else. Make sure you check any fancy styling
you apply to the div, e.g. background images have been reported to be a
problem on IE 7.
+The plot function can also be used as a jQuery chainable property. This form
+naturally can't return the plot object directly, but you can still access it
+via the 'plot' data key, like this:
+
+```js
+var plot = $("#placeholder").plot(data, options).data("plot");
+```
+
The format of the data is documented below, as is the available
options. The plot object returned from the call has some methods you
can call. These are documented separately below.
View
@@ -104,6 +104,9 @@ The base and overlay canvas are now using the CSS classes "flot-base" and
- Added a new option called 'zero' to bars and filled lines series, to control
whether the y-axis minimum is scaled to fit the data or set to zero.
+ - The plot function is now also a jQuery chainable property.
+ (patch by David Schnur, issues #734 and #816, pull request #953)
+
### Bug fixes ###
- Fix problem with null values and pie plugin. (patch by gcruxifix,
View
@@ -2681,6 +2681,8 @@ Licensed under the MIT license.
}
}
+ // Add the plot function to the top level of the jQuery object
+
$.plot = function(placeholder, data, options) {
//var t0 = new Date();
var plot = new Plot($(placeholder), data, options, $.plot.plugins);
@@ -2692,6 +2694,14 @@ Licensed under the MIT license.
$.plot.plugins = [];
+ // Also add the plot function as a chainable property
+
+ $.fn.plot = function(data, options) {
+ return this.each(function() {
+ $.plot(this, data, options);
+ });
+ }
+
// round to nearby lower multiple of base
function floorInBase(n, base) {
return base * Math.floor(n / base);

0 comments on commit 410dd7d

Please sign in to comment.