Recent Posts

JavaScript Tag

jQuery Mobile

22:27 14 May in JavaScript, jQuery, JSON, Thomas' Toolkit by Thomas

I've been on a jQuery Mobile based product for almost a week.  Its a revamp of a project I did 2 years ago. The original system ran on Wordpress just for the HTML shell, and my own custom JS, heavy on the AJAX, then later on jQTouch for mobile.  Its been a solid performer for about 2 years now, and a pretty hot item our clients, so there must be something to it. But, times change, and I'm feeling that jQuery Mobile is evolved enough now to take a real run at it. So far its been easy enough to learn, once you get by the whole 'pageinit' thing.  I'm only adapting the system, not rewriting it yet.  This job is "old brain in new body".  For the moment, I've found this works to call custom JavaScript for each page: $( document ).delegate( "#my_page_id",  "pageinit",  function() { $.ajax(...

JavaScript function for blacklisting characters in Unicode

17:18 18 August in Forms, General, JavaScript by Thomas

This is a handy little function I wrote today to help me out with a special text field. This field needs to accept number and letters only, no spaces and no other characters.  There is a var for each character I don't want the field to accept, and there is an array that holds all those vars for the checking loop at the end. Depending on how this field works out, I may need to restore a couple of characters, like '-' and '_', for which all I have to do is remove them from the array. My short hand for the characters may be a little vague, but you can find the Unicode for any character by using the Character Mapper in Windows. function noChars(e) { var keynum; var keychar; if(window.event) // IE { keynum = e.keyCode; } else if(e.which) // Netscape/Firefox/Opera { keynum = e.which; } keychar = String.fromCharCode(keynum); var space = /u0020/; var hash = /u0023/; var exc = /u0021/; var at = /u0040/; var dollar = /u0024/; var perc = /u0025/; var amp = /u0026/; var lper = /u0028/; var rper = /u0029/; var ast = /u002a/; var apos = /u0027/; var lbra = /u007b/; var pipe = /u007c/; var rbra = /u007d/; var cir = /u005e/; var hm = /u002d/; var us = /u005f/; var plus = /u002b/; var equal = /u003d/; var sqrl = /u005b/; var sqrr = /u005d/; var bakslash = /u005c/; var forslash = /u002f/; var dq = /u0022/; var colon = /u003a/; var semi = /u003b/; var ques = /u003f/; var per = /u002e/; var com = /u002c/; var ltag = /u003c/; var rtag = /u003e/; var tld = /u007e/; var acc = /u0060/; var charChecks = new Array(space,hash,exc,at,dollar,perc,amp,lper, rper,ast,apos,lbra,pipe,rbra,cir,hm,us,plus,equal,sqrl,sqrr,bakslash, forslash,dq,colon,semi,ques,per,com,ltag,rtag,tld,acc); var i; for (i=0; i < charChecks.length; i++)...