Why reloading ?
I recently had to use the circliful jquery plugin for a project using Angular JS. The plugin is very useful if you want to display data using a circle. Another point that made us select this plugin, is that it uses only html5 and should therefore work on modern browsers.
With so many good points, what was the point of doing a complete rewrite of the plugin ?
First because the plugin did not allow post init modification of the displayed data. We were able to add this feature with a bit of code modification.
Secondly the plugin did not work with IE8 and our projet was supposed to support this old browser.
It did not take too much time to do a complete rewrite of the code with proper OO style. The goal is to provide any developper with a direct access to the circliful reloaded object that manages the display of the circle.
Adding the support of VML (for IE < 9), was a bit longer but in the end, the result looks just like what it does using canvas. Just for the fun of it, I also added support of SVG.
In order to allow any drawing technology, I added the notion of drawer that allows any developper to implement its own drawing method (both technology and design).
Code and Documentation
The code can be found on my github repository
The documentation can be found here
I hope this code will be helpful