Javascript - 将所有HTML代码复制到剪贴板

时间:2015-09-07 09:21:08

标签: javascript internet-explorer-8

我正在制作一个必须检查来自特殊网页的信息的应用程序。我需要做的是将html内容从这个页面传递给我现有的程序,并完成所有其他工作。

我获取数据的网站在IE8及更新版本中运行,因此它有点缩小了问题。我需要为IE做一个扩展,它可以从它调用的页面中复制所有的html代码(并在最好的情况下将其保存为.txt),因此结果如下所示:

<html>
<body>
Hello world
</body>
</html>

我知道如何进行此类扩展,唯一的问题是javascript:我是新手。这个问题有什么简短的解决方案吗?

2 个答案:

答案 0 :(得分:0)

有很多选择

1)使用XMLSerializer

var Source = new XMLSerializer().serializeToString(document);

2)

   document.documentElement.outerHTML
   or

   document.documentElement.innerHTML

答案 1 :(得分:0)

试试这个:

我参考了here

&#13;
&#13;
function copyTextToClipboard(text) {
  var textArea = document.createElement("textarea");
  textArea.style.position = 'fixed';
  textArea.style.top = 0;
  textArea.style.left = 0;
  textArea.style.width = '2em';
  textArea.style.height = '2em';
  textArea.style.padding = 0;
  textArea.style.border = 'none';
  textArea.style.outline = 'none';
  textArea.style.boxShadow = 'none';
  textArea.style.background = 'transparent';
  textArea.value = text;
  document.body.appendChild(textArea);
  textArea.select();
  try {
    var successful = document.execCommand('copy');
    var msg = successful ? 'successful' : 'unsuccessful';
    console.log('Copying text command was ' + msg);
  } catch (err) {
    console.log('Oops, unable to copy');
  }
  document.body.removeChild(textArea);
}
$(document).ready(function() {
  $("#btnDate").click(function() {
    var allHTML = document.documentElement.outerHTML;
    copyTextToClipboard(allHTML);
  });
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<button type="button" id="btnDate" class="btn btn-primary">Copy HTML
</button>
&#13;
&#13;
&#13;