innerHTML代码规范问题js
使用 innerHTML给文本域赋值时。。得到的代码在IE 6.0 里的是大写的字母,有些属性没有双引号<FONT COLOR=red>字体</FONT> 不符合标准。。这个用js要怎样处理成
<font color="red">字体</font>
html代码标签都变成小定。。属性无双引号的自动加上双引号。。?
我是从HTML编辑器里获取的。
程序代码:
//将html标签到大小转换为小写并属性加双引号,IE时才调用 function ieHTML(content) { var okText = content.replace(/<(\/?)(\w+)([^>]*)>/g,function(match,$1,$2,$3){ if($1){ return "</"+ $2.toLowerCase() +">"; } return ("<"+ $2.toLowerCase() +$3+">").replace(/=(("[^"]*?")|('[^']*?')|([\w\-\.]+))([\s>])/g,function(match2,$1,$2,$3,$4,$5,position,all){ if($4){ return '="'+ $4 +'"'+ $5; } return match2; }) }); return okText.replace(/<\/?([^>]+)>/g,function(lele){return lele.toLowerCase();}); }这个。。还不是很完善。。
有些加不上引号。小写的没问题了。
<font color=#00ffff>51js</font>
color= 这里加不上引号。。
pluginspage=http:// 加不上引号
"><embed style="width: 498px; height: 500px" pluginspage=http://www. src=http://player. width="498" height="500" type=application/x-shockwave-flash wmode="transparent" quality="high"></embed>
[ 本帖最后由 lele2007 于 2010-9-5 22:40 编辑 ]