如何使用jQuery的clone()克隆文本?

Cof*_*fey 1 javascript jquery

我需要克隆元素的文本,比如说h1.我正在使用jQuery的clone(),但我只是想复制文本而不是h1标签,所以我可以将它插入到h3标签中.我尝试在.clone()之后使用text(),但它不起作用.

Nic*_*ver 6

这取决于你所追求的,但听起来你只想将文本设置为相同的东西,如下所示:

$("h3").text($("h1").text());
Run Code Online (Sandbox Code Playgroud)

另一种方法是.append().text()<h1>,你可以直接这样做:

$("h3").append($("h1").text());
Run Code Online (Sandbox Code Playgroud)

但是,正如@ bobince在下面指出的那样,在某些情况下这可能是危险的,让我们来看一个简单的:

<h1>&lt;script&gt;alert("hi, I'm malicious script");&lt;/script&gt;</h1>
Run Code Online (Sandbox Code Playgroud)

你可以在这里看到它 ...你可以想象这可能是一些讨厌的脚本有问题.

  • 你肯定想要第二个.第一个采用元素的文本并将其用作HTML,因此如果其中有"<"或"&"字符,它们将被视为标记(可能导致XSS安全漏洞). (5认同)