使用$('html').html()
,我可以获得<html>
标记(<head>
、<body>
等)中的超文本标记语言。但是如何才能获得<html>
标记的实际超文本标记语言(带有属性)呢?
或者,是否有可能获得页面的整个HTML (包括文档类型、<html>
等)。使用jQuery (或普通的老式JavaScript)?
发布于 2014-04-05 05:39:19
在本地获取html
元素的最简单方法是:
document.documentElement
下面是引用:https://developer.mozilla.org/en-US/docs/Web/API/Document.documentElement。
更新:要获取字符串形式的html
元素,您可以这样做:
document.documentElement.outerHTML
发布于 2013-01-30 06:12:02
下面是如何完全使用JS来获取html DOM元素:
var htmlElement = document.getElementsByTagName("html")[0];
或
var htmlElement = document.querySelector("html");
如果您想使用jQuery从其中获取属性...
$(htmlElement).attr(INSERT-ATTRIBUTE-NAME);
发布于 2013-09-08 09:59:04
除了其他一些答案之外,您还可以通过以下方式访问HTML元素:
var htmlEl = document.body.parentNode;
然后,您可以获得内部HTML内容:
var inner = htmlEl.innerHTML;
这样做看起来像是marginally faster。但是,如果您只是获取HTML元素,那么document.body.parentNode
似乎就是quite a bit faster。
有了HTML元素之后,就可以用getAttribute
和setAttribute
方法处理属性了。
对于DOCTYPE,您可以使用this question中详细介绍的document.doctype
。
https://stackoverflow.com/questions/4196971
复制相似问题