Add HTML Elements to XUL Addons
I've been working on a new addon at Mozilla which isn't anywhere near finished so I wont bother telling you what it's meant to do...because it could change at any moment. Since this is my first real addon, it's been a struggle, but that's a good thing -- it means I'm learning a ton. One problem I ran into was trying to get a checkbox (INPUT) element within the addon via JavaScript -- nothing was displaying.
After a bit of research and guesswork, I figured out what I was doing wrong -- I was using the wrong document method to create the element:
var input = document.createElementNS("http://www.w3.org/1999/xhtml", "input");
Using document.createElementNS with the proper namespace resulted in my checkbox displaying in all of its glory. It's beautiful square, checked glory. Firefox addons can be created in a number of ways so if you're looking to create your own and you aren't seeing HTML elements correctly, keep this solution in mind!
![9 Mind-Blowing WebGL Demos]()
As much as developers now loathe Flash, we're still playing a bit of catch up to natively duplicate the animation capabilities that Adobe's old technology provided us. Of course we have canvas, an awesome technology, one which I highlighted 9 mind-blowing demos. Another technology available...
![fetch API]()
One of the worst kept secrets about AJAX on the web is that the underlying API for it, XMLHttpRequest, wasn't really made for what we've been using it for. We've done well to create elegant APIs around XHR but we know we can do better. Our effort to...
![MooTools History Plugin]()
One of the reasons I love AJAX technology so much is because it allows us to avoid unnecessary page loads. Why download the header, footer, and other static data multiple times if that specific data never changes? It's a waste of time, processing, and bandwidth. Unfortunately...
![spellcheck Attribute]()
Many useful attributes have been provided to web developers recently: download, placeholder, autofocus, and more. One helpful older attribute is the spellcheck attribute which allows developers to control an elements ability to be spell checked or subject to grammar checks. Simple enough, right?
Reminded me of my initial days with JavaScript David! I also made the same namespace errors and then wondered for hours, what went wrong!