如何使用JavaScript / jQuery获取<html>标记HTML?
使用$('html').html()我可以在<html>标签( <head> , <body>等)中获取HTML。 但是我怎样才能得到<html>标签的实际HTML(带有属性)? 
 或者,是否有可能使用jQuery(或普通的旧JavaScript)获取页面的整个HTML(包括doctype, <html>等)? 
 原生获取html元素的最简单的方法是: 
 document.documentElement 
以下是参考: https : //developer.mozilla.org/en-US/docs/Web/API/Document.documentElement 。
 更新:然后抓住html元素作为一个string,你会这样做: 
 document.documentElement.outerHTML 
这是如何纯粹与JS获得HTML DOM元素:
 var htmlElement = document.getElementsByTagName("html")[0]; 
要么
 var htmlElement = document.querySelector("html"); 
如果你想使用jQuery从它获取属性…
 $(htmlElement).attr(INSERT-ATTRIBUTE-NAME); 
除了其他一些答案之外,您还可以通过以下方式访问HTML元素:
 var htmlEl = document.body.parentNode; 
然后你可以得到内部的HTML内容:
 var inner = htmlEl.innerHTML; 
 这样做似乎稍微快一点 。 如果你只是获得HTML元素,但是, document.body.parentNode似乎比较快 。 
 在获得HTML元素后,可以使用getAttribute和setAttribute方法来处理属性。 
 对于DOCTYPE,您可以使用document.doctype , 这个问题已经详细阐述了。 
在jQuery中:
 var html_string = $('html').outerHTML() 
在平凡的Javascript中:
 var html_string = document.documentElement.outerHTML 
 如果你想用jQuery获得一个HTML元素的属性,你可以使用.attr(); 
 所以$('html').attr('someAttribute'); 会给你元素html的someAttribute的值 
另外:
这里有一个jQuery插件: http : //plugins.jquery.com/project/getAttributes
这使您可以从HTML元素获取所有属性