这个和某些浏览器解释有关!可以把你range.pasteHTML(str1);中的str1进行编码:encodehtml(str1)
function encodehtml(s)
{
s = s.replace(/&/g, "&");
s = s.replace(/</g, "<");
s = s.replace(/>/g, ">");
s = s.replace(/'/g, "'");
s = s.replace(/"/g, """);
return s;
}
显示是在还原:
function decodehtml(s)
{
s = s.replace(/</g, "<");
s = s.replace(/>/g, ">");
s = s.replace(/'/g, "'");
s = s.replace(/"/g, "\"");
s = s.replace(/&/g, "&");
return s;
}
function encodehtml(s)
{
s = s.replace(/&/g, "&");
s = s.replace(/</g, "<");
s = s.replace(/>/g, ">");
s = s.replace(/'/g, "'");
s = s.replace(/"/g, """);
return s;
}
显示是在还原:
function decodehtml(s)
{
s = s.replace(/</g, "<");
s = s.replace(/>/g, ">");
s = s.replace(/'/g, "'");
s = s.replace(/"/g, "\"");
s = s.replace(/&/g, "&");
return s;
}
还是没对!也许是我提问没对!这是一个HTML在线编辑器,这代码经过
range.pasteHTML(str1);后
在编辑器里显示的是WINDOWS PLAER 的外型,但是看HTML代码,中间的<param>都没有了!
为什么我把上面的字符串中的 0002E510-0000-0000-C000-000000000046
换成FLASH的,其它都不动!他就能正常显示出来!
//
我上面的函数,虽然html代码对了!但他出来不是PLaER的外型,直接成了html代码
//
如果说不能播放文件的话
那还有可能服务器用的是mms流媒体服务器.
里说的显示是html代码!
那就在显示之前!用decodehtml转一下.就好了