【发布时间】:2021-03-16 21:50:46
【问题描述】:
我正在开发一个拖放项目,可以将项目添加到工作区并拖动以进行定位。我正在尝试使用一个关键代码来创建多个相同类型的元素,所有这些元素都可以拖动。只要在页面加载时创建了可拖动元素,jQuery 函数就可以工作,但如果它是使用函数创建的,则 draggable() 方法对它不起作用。有没有办法让函数识别用函数创建的元素?
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Draggable Div Test</title>
<script src="https://code.jquery.com/jquery-1.12.4.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<style>
.test {
width: 50px;
height: 50px;
}
</style>
</head>
<body>
<div id="area" style="border: 1px solid black; width: 500px; height: 500px;"> </div>
<script>
var area = document.getElementById("area");
function duplicate(e) {
switch(e.keyCode) {
case 49:
var test = document.createElement("div");
test.classList.add("test");
test.classList.add("draggable");
console.log(test.classList)
test.style.backgroundColor = "blue";
area.appendChild(test);
break
}
}
document.addEventListener("keydown", duplicate)
$( function() {
$( ".test" ).draggable();
} );
</script>
</body>
</html>
谢谢
【问题讨论】:
标签: javascript html jquery css jquery-ui-draggable