function copytoclipboard(){
window.clipboardData.setData("Text",frames.ifr.HtmlEditor.document.body.innerHTML); 
}以上代码可以将frames.ifr.HtmlEditor.document.body中的内容复制到剪贴板。可是我发现,粘贴到“淘宝”的发布商品中时,和我们手动复制、粘贴不同。例如:frames.ifr.HtmlEditor.document.body中是1幅图片,手动复制、粘贴到“淘宝”的发布商品中显示的是该图片;而用window.clipboardData.setData("Text",frames.ifr.HtmlEditor.document.body.innerHTML),粘贴到“淘宝”的发布商品中显示的不是图片,却是“<IMG src="http://csdnimg.cn/bbs/t/5/i/pic_logo.gif">”(查看源文件,显示的是“&lt;IMG src="http://csdnimg.cn/bbs/t/5/i/pic_logo.gif"&gt; ”)应该怎样修改window.clipboardData.setData("Text",frames.ifr.HtmlEditor.document.body.innerHTML); 才能使它粘贴进去显示的是图片(就像手动复制、粘贴的那样)?

解决方案 »

  1.   

    LZ看看"Text"能不能换成别的,比如说Image,或者别的对象
      

  2.   


    你可以先将所有的 "&lt;" 和 "&gt;" 分别替换为 < 和 >
    var html = frames.ifr.HtmlEditor.document.body.innerHTML.replace(/&gt;/, ">").replace(/&lt;/, "<");
    window.clipboardData.setData("Text", html);
      

  3.   

    哦, 忘了给正则表达式加匹配模式了,正确的写法应该是var html = frames.ifr.HtmlEditor.document.body.innerHTML.replace(/&gt;/, ">").replace(/&lt;/, " <"); 
    window.clipboardData.setData("Text", html);
      

  4.   


    哦, 忘了给正则表达式加匹配模式了,正确的写法应该是 var html = frames.ifr.HtmlEditor.document.body.innerHTML.replace(/&gt;/ig, ">").replace(/&lt;/ig, " <"); 
    window.clipboardData.setData("Text", html);
      

  5.   

    setData只能是
    1.Text Transfers data formatted as text. 
    2.URL Transfers data formatted as a URL. 
    图片不能直接set进去.