Also stop at root when extracting CSS color
This change adds an additional check for whether the parent element
is `null` or `undefined` in `$.color.extract`. This can happen when
working with elements that have not yet been added to the DOM under
`<body>`.
Consider the following example pie chart.
var elm = $("<div />")
.css({
width: "240px"
, height: "320px"
})
var data = [
{label: "One", data: "33"}
, {label: "Two", data: "33"}
, {label: "Three", data: "33"}
]
var opts = {
legend: {
show: true
}
, series: {
pie: {
show: true
}
}
}
$.plot(elm, data, opts)
elm.appendTo($("body"))
When flot inserts each legend row, it tries to use the same color as
the corresponding graph part, unless it was explicitly specified in
the options. However, in this example, `$.color.extract` runs into
an unexpected `null` reference because `<body>` is not an ancestor
of `elm`. Specifically, a `TypeError: Cannot read property
'nodeName' of undefined` would be thrown.
Showing
Please
register
or
sign in
to comment