【发布时间】:2023-03-21 01:12:01
【问题描述】:
我试图在单击 DIV 的内容时重复其内容。
<html>
<head>
<script type="text/javascript" src="javascript.js"></script>
</head>
<body>
<div id="repeatTHIS">
<a>text</a><br>
<button id="button" onclick="repeat()">text</button><br>
<a>text</a>
</div>
</body>
</html>
javascript.js
document.getElementById('button').onclick = repeat;
var i = 0;
var original = document.getElementById('repeatTHIS');
function repeat() {
var clone = original.cloneNode(true);
clone.id = "repeatTHIS1" + ++i;
original.parentNode.appendChild(clone);
}
我还想随机定位复制的 div,但是我什至无法让我的 DIV 重复。
编辑: DEMO
这实际上使用 jsfiddle 有效,但在使用记事本时无效
【问题讨论】:
-
请发jsfiddle.net 进行演示。另请记住,
id属性不是意味着重复;它们对元素来说是唯一的。请改用class。 -
首先了解并接受 id 应该是唯一的,并且在相同的上下文中在同一页面上具有重复的 id,错误和问题是可以预料的。
-
问题是当你通过 id 搜索元素时,浏览器会从页面顶部向下搜索 id。当它找到回答该 id 的 first 元素时,它 STOPS 因此您只需将处理程序附加到第一个按钮。并且您的 html 拼写错误,说“onlick”而不是“onclick”,有人在下面回答但删除了它,我不知道为什么。
-
@Banana - Are you?
-
“重复 DIV 的内容” 这几乎不是您期望发生的具体描述。
标签: javascript html