gpt4 book ai didi

javascript - 是否可以将 DOM 元素转换为字符串并返回?

转载 作者:行者123 更新时间:2023-12-04 18:07:58 24 4
gpt4 key购买 nike

我正在获取任何 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

这对你们中的一些人来说可能看起来没用,但这是我针对尚不存在的目标元素的解决方法。我没有使用任何库。

谢谢!

最佳答案

使用标准 JavaScript,带有 e作为一个元素:

转换为字符串:

const html = e.outerHTML

转换回元素:

const temp = document.createElement('div') // Can be any element
temp.innerHTML = html
const e = temp.children[0]

使用 jQuery 很容易,尽管我一般不鼓励使用它。

转换为字符串:

var s = e.outerHTML;

转换回元素:

var e = $(s)[0];
$("<div></div>")解析 HTML 并返回一个 jQuery 对象。您可以使用 [0] 获得对第一个元素的引用。

关于javascript - 是否可以将 DOM 元素转换为字符串并返回?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22077847/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com