function f(){
var myself = this;
// Set initial width to match the placeholder
myself.chartDefinition.width = myself.placeholder().width();
// Attach the resize handler only on the first execution of the chart component
if (!this.resizeHandlerAttached){
// Ensure render is only triggered after resize events have stopped
var debouncedResize = _.debounce(function(){
// Show chart again.
myself.placeholder().children().css('visibility','visible');
// Change chart width
myself.chartDefinition.width = myself.placeholder().width();
myself.render( myself.query.lastResults() );
}, 200);
// Attach resize handler
$(window).resize(function(){
// Only trigger resize if the container has changed width
if ( myself.chartDefinition.width != myself.placeholder().width()){
// Temporarily hide chart so that overflow does not happen
myself.placeholder().children().css('visibility','hidden');
// Trigger the resize with debounce
debouncedResize();
}
});
this.resizeHandlerAttached = true;
}
}
No comments:
Post a Comment