【发布时间】:2014-02-27 18:57:33
【问题描述】:
我正在获取任何 DOM 元素(例如 document.body),我想将其转换为这样的字符串:
function convert(el){
//should return a String
}
alert(convert(document.body));
//should alert (String) "document.body"
alert(document.getElementById('foo'));
//should alert (String) "document.getElementById('foo')"
我还想将这些字符串转换回来(如果可能,不使用 eval())。例如:
function convertBack(el){
//should return a node
}
convertBack('document.body').innerHTML = 'foo';
//should change the innerHTML of document.body to foo
这对你们中的一些人来说可能看起来没用,但这是我针对尚不存在的目标元素的解决方法。我没有使用任何库。
谢谢!
【问题讨论】:
-
你真的想要'document.body'吗?只是出于好奇,你为什么要这个?
-
是的,不是 [object HTMLBodyElement]。如果这对您有意义,我想将 DOM 元素作为源代码来定位...
-
如果您包含最初的问题,可能会有更好/更简单的方法
-
这听起来很像 X Y 问题。
-
老实说有点像。但是,很多 JavaScript 库都可以像这样针对 DOM 元素,所以我相信有一些方法。
标签: javascript string function dom elements