IE8 innerHTML removes attribute quotes

When you get the innerHTML of a DOM node in IE, if there are no spaces in an attribute value, IE will remove the quotes around it.

So to over come this problem you can use the below function to replace it with Quotes again.

function iereplaceInnerHTML(obj, convertToLowerCase) {
 var zz = obj.innerHTML
     ,z = zz.match(/<\/?\w+((\s+\w+(\s*=\s*(?:".*?"|'.*?'|[^'">\s]+))?)+\s*|\s*)\/?>/g);

  if (z){
    for (var i=0;i]/g;
      z[i] = z[i]
              .replace(/(])/g
              , replacer = function(){
                  var args = Array.prototype.slice.call(arguments);
                  return '="'+(convertToLowerCase ? args[2].toLowerCase() : args[2])+'"'+args[3];
                };
          z[i] = z[i].replace(y[j],y[j].replace(replaceRE,replacer));
          j++;
        }
       }
       zz = zz.replace(zSaved,z[i]);
     }
   }
  zz = zz.replace("colSpan=","colspan=");
  return zz;
 }

Usage :

iereplaceInnerHTML(document.getElementById('test'),'');

Opera, Safari Beat Chrome On Google’s Own JavaScript Conformance Test

Back in June, Google launched Sputnik, a suite of tools that runs over 5,000 tests to check a web browser’s JavaScript conformance. Last week, they made the tool a lot easier for anyone to use, with a version that works in the web browser. The results are interesting.

Opera, Safari Beat Chrome

Notably, both the Opera and Safari web browsers beat Google’s own Chrome browser in the test. As you can see in the picture above, Opera is the clear leader, with only 78 failures (the closer to the center, the less errors). Safari came in second with 159 errors, with Chrome in third with 218 errors. Firefox is close behind with 259 errors, while Internet Explorer is the outlier with 463 errors.

These tests were run on Windows machines, with the latest released version of each browser. Using the web tool on my Mac, though, shows similar results (at least for Opera, Chrome, Safari, and Firefox — there is no IE for Mac anymore).

While much of the focus on JavaScript is about speed (that’s what the SunSpider test measures, for example), Sputnik is interesting because it focuses on conformity, making it more like the Acid3 test, which tests web standards compliance. Chrome, Safari, and Opera have all passed Acid3, with Firefox getting very close (94/100 for Firefox 3.6). IE, meanwhile, again lags behind with just 20/100 for IE8. And even the new IE9 preview only scores 55/100.

Speaking of IE9, I tried to run the Sputnik tool in the preview build of the new browser on Windows 7. Unfortunately, it completely shut down several times after getting up to about 50 failures after only a few hundred of the 5,000+ tests — not a good sign. But again, it’s just a very early preview release of the browser, and early SunSpider results for the browser have been good.

Latin-1 Entities

The following table gives the character entity reference, decimal character reference, and hexadecimal character reference for 8-bit characters in the Latin-1 (ISO-8859-1) character set, as well as the rendering of each in your browser. Glyphs of the characters are available at the Unicode Consortium.

Character Entity Decimal Hex Rendering in Your Browser
Entity Decimal Hex
no-break space = non-breaking space
inverted exclamation mark ¡ ¡ ¡ ¡ ¡ ¡
cent sign ¢ ¢ ¢ ¢ ¢ ¢
pound sign £ £ £ £ £ £
currency sign ¤ ¤ ¤ ¤ ¤ ¤
yen sign = yuan sign ¥ ¥ ¥ ¥ ¥ ¥
broken bar = broken vertical bar ¦ ¦ ¦ ¦ ¦ ¦
section sign § § § § § §
diaeresis = spacing diaeresis ¨ ¨ ¨ ¨ ¨ ¨
copyright sign © © © © © ©
feminine ordinal indicator ª ª ª ª ª ª
left-pointing double angle quotation mark = left pointing guillemet « « « « « «
not sign ¬ ¬ ¬ ¬ ¬ ¬
soft hyphen = discretionary hyphen ­ ­ ­ ¬ ¬ ¬
registered sign = registered trade mark sign ® ® ® ® ® ®
macron = spacing macron = overline = APL overbar ¯ ¯ ¯ ¯ ¯ ¯
degree sign ° ° ° ° ° °
plus-minus sign = plus-or-minus sign ± ± ± ± ± ±
superscript two = superscript digit two = squared ² ² ² ² ² ²
superscript three = superscript digit three = cubed ³ ³ ³ ³ ³ ³
acute accent = spacing acute ´ ´ ´ ´ ´ ´
micro sign µ µ µ µ µ µ
pilcrow sign = paragraph sign
middle dot = Georgian comma = Greek middle dot · · ·
cedilla = spacing cedilla ¸ ¸ ¸ ¸ ¸ ¸
superscript one = superscript digit one ¹ ¹ ¹ ¹ ¹ ¹
masculine ordinal indicator º º º º º º
right-pointing double angle quotation mark = right pointing guillemet » » » » » »
vulgar fraction one quarter = fraction one quarter ¼ ¼ ¼ ¼ ¼ ¼
vulgar fraction one half = fraction one half ½ ½ ½ ½ ½ ½
vulgar fraction three quarters = fraction three quarters ¾ ¾ ¾ ¾ ¾ ¾
inverted question mark = turned question mark ¿ ¿ ¿ ¿ ¿ ¿
Latin capital letter A with grave = Lat

in capital letter A grave

À À À À À À
Latin capital letter A with acute Á Á Á Á Á Á
Latin capital letter A with circumflex      Â
Latin capital letter A with tilde à à à à à Ã
Latin capital letter A with diaeresis Ä Ä Ä Ä Ä Ä
Latin capital letter A with ring above = Latin capital letter A ring Å Å Å Å Å Å
Latin capital letter AE = Latin capital ligature AE Æ Æ Æ Æ Æ Æ
Latin capital letter C with cedilla Ç Ç Ç Ç Ç Ç
Latin capital letter E with grave È È È È È È
Latin capital letter E with acute É É É É É É
Latin capital letter E with circumflex Ê Ê Ê Ê Ê Ê
Latin capital letter E with diaeresis Ë Ë Ë Ë Ë Ë
Latin capital letter I with grave Ì Ì Ì Ì Ì Ì
Latin capital letter I with acute Í Í Í Í Í Í
Latin capital letter I with circumflex Î Î Î Î Î Î
Latin capital letter I with diaeresis Ï Ï Ï Ï Ï Ï
Latin capital letter ETH Ð Ð Ð Ð Ð Ð
Latin capital letter N with tilde Ñ Ñ Ñ Ñ Ñ Ñ
Latin capital letter O with grave Ò Ò Ò Ò Ò Ò
Latin capital letter O with acute Ó Ó Ó Ó Ó Ó
Latin capital letter O with circumflex Ô Ô Ô Ô Ô Ô
Latin capital letter O with tilde Õ Õ Õ Õ Õ Õ
Latin capital letter O with diaeresis Ö Ö Ö Ö Ö Ö
multiplication sign × × × × × ×
Latin capital letter O with stroke = Latin capital letter O slash Ø Ø Ø Ø Ø Ø
Latin capital letter U with grave Ù Ù Ù Ù Ù Ù
Latin capital letter U with acute Ú Ú Ú Ú Ú Ú
Latin capital letter U with circumflex Û Û Û Û Û Û
Latin capital letter U with diaeresis Ü Ü Ü Ü Ü Ü
Latin capital letter Y with acute Ý Ý Ý Ý Ý Ý
Latin capital letter THORN Þ Þ Þ Þ Þ Þ
Latin small letter sharp s = ess-zed ß ß ß ß ß ß
Latin small letter a with grave = Latin small letter a grave à à à à à à
Latin small letter a with acute á á á á á á
Latin small letter a with circumflex â â â â â â
Latin small letter a with tilde ã ã ã ã ã ã
Lati

n small letter a with diaeresis

ä ä ä ä ä ä
Latin small letter a with ring above = Latin small letter a ring å å å å å å
Latin small letter ae = Latin small ligature ae æ æ æ æ æ æ
Latin small letter c with cedilla ç ç ç ç ç ç
Latin small letter e with grave è è è è è è
Latin small letter e with acute é é é é é é
Latin small letter e with circumflex ê ê ê ê ê ê
Latin small letter e with diaeresis ë ë ë ë ë ë
Latin small letter i with grave ì ì ì ì ì ì
Latin small letter i with acute í í í í í í
Latin small letter i with circumflex î î î î î î
Latin small letter i with diaeresis ï ï ï ï ï ï
Latin small letter eth ð ð ð ð ð ð
Latin small letter n with tilde ñ ñ ñ ñ ñ ñ
Latin small letter o with grave ò ò ò ò ò ò
Latin small letter o with acute ó ó ó ó ó ó
Latin small letter o with circumflex ô ô ô ô ô ô
Latin small letter o with tilde õ õ õ õ õ õ
Latin small letter o with diaeresis ö ö ö ö ö ö
division sign ÷ ÷ ÷ ÷ ÷ ÷
Latin small letter o with stroke = Latin small letter o slash ø ø ø ø ø ø
Latin small letter u with grave ù ù ù ù ù ù
Latin small letter u with acute ú ú ú ú ú ú
Latin small letter u with circumflex û û û û û û
Latin small letter u with diaeresis ü ü ü ü ü ü
Latin small letter y with acute ý ý ý ý ý ý
Latin small letter thorn þ þ þ þ þ þ
Latin small letter y with diaeresis ÿ ÿ ÿ ÿ ÿ ÿ