I’m writing a javascript / HTML5 canvas library to provide basic GUI elements for web audio applications.
There’s a little demo script that creates widgets with the library and assemble them in a GUI. You can find it @ http://bitterspring.net/webshifter/
The problem is, it seems to work correctly on Chrome and on Firefox 3.6 – 4.0 but, in the last cases, only with firebug. Without firebug, the script seems to visualize nothing on screen, while with firebug it does.
The only firebug-related pieces of code are some console.log statement I use to track the behaviour of the library. But these statements should have no effect on a non-firebug enabled browser, as I learnt from Firebug forums. What can prevent the example script to work, in these cases?
The library + example code is freshly committed on http://github.com/janesconference/KievII , by the way.
EDIT: Seems that, when console is not defined, console.log() throws an exception. Is there a way to keep the logging lines of code and not getting the exception? (yeah, one could check if console != undefined, but is there a better way?)
EDIT: This does the trick, it seems (Font)
if (typeof console=="undefined"){console={log:function(A){var B=false;if(B){alert(A)}}}}
Right, the
consoleobject is not available in all browsers by default.This code:
– currently disables
consolesupport in Firefox 4’s Web Console, since it tries to inject theconsoleobject when opened and won’t do that if the page already defined aconsoleobject.An interesting wrapper for
consolethat deals with this problem is: http://benalman.com/projects/javascript-debug-console-log/ , although I haven’t tried it myself.