比如有如下innerHTMLvar innerHTMLValue="<img src='http://news.baidu.com/ni?u=http://i0.sinaimg.cn/ty/up/2009-03-15/U2481P6T64D59384F1322DT20090315164126.jpg'>";aim.innerHTML=innerHTMLValue;这个是加了引号的src但是这个图片可以再浏览器里正确浏览的。而如果我换成这样var innerHTMLValue="<img src=http://news.baidu.com/ni?u=http://i0.sinaimg.cn/ty/up/2009-03-15/U2481P6T64D59384F1322DT20090315164126.jpg>";aim.innerHTML=innerHTMLValue;是一个不加引号的html,为什么就不能显示了???这个是为什么?是不是和html标准有关

解决方案 »

  1.   

    是的,在HTML里面属性的值一般都是用''
    如果你这个不用引号的话呢 <img src=http://news.baidu.com/ni?u=http://i0.sinaimg.cn/ty/up/2009-03-15/U2481P6T64D59384F1322DT20090315164126.jpg>
    这样的话,直接解析到?号的时候就不会解析后面的。所以一般规范的话把引号加上,如果是字符串可以考虑用单引号
    或者使用转义符
      

  2.   

    var innerHTMLValue=" <img src=\"http://news.baidu.com/ni?u=http://i0.sinaimg.cn/ty/up/2009-03-15/U2481P6T64D59384F1322DT20090315164126.jpg\">"; 
      

  3.   

    应该是html解析的问题,要用转义字符吧
      

  4.   

    有谁知到有办法使用html标准解决这个问题吗
      

  5.   

    在 IE6 中,可以很方便地利用 img 的 src 属性,实现本地图片预览,然而在 IE7 中,这种办法却行不通。
    最好使用 AlphaImageLoader
      

  6.   

    本来在src后面是“” 但是由于已经有了“”,所以用了‘’