我有 .main-container DIV,其中有2个子DIV,我想使这些DIV可拖动。
我正在使用jquery-ui来实现这一点。如果我编写以下代码,则可以拖动:
index.js
$( function() {
$( ".text1" ).draggable({containment: 'parent'});
} )
$( function() {
$( ".text2" ).draggable({containment: 'parent'});
} )
现在我想使上面的代码动态化,即我想创建一个将类名作为参数接收的函数。
赞:
function drag(val){
console.log("here", val)
$(val).draggable({containment: 'parent'});
}
但是,当我创建一个函数时,它不起作用。有人让我知道这是怎么回事。
index.html
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>New POC</title>
<link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">
<link rel="stylesheet" href="./index.css">
</head>
<body>
<div class="main-container">
<div class="text1" ondrag="drag('.test1')">Text 1</div>
<div class="text2" ondrag="drag('.test2')">Text 2</div>
</div>
<script src="https://code.jquery.com/jquery-3.3.1.min.js"
integrity="sha256-FgpCb/KJQlLNfOu91ta32o/NMZxltwRo8QtmkMRdAu8="
crossorigin="anonymous"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<script src="./index.js"></script>
</body>
</html>
答案 0 :(得分:2)
您需要在标签中添加一个拖动属性='true'的附加属性:
<div class="text1" draggable='true' ondrag="drag('.test1')">Text 1</div>
<div class="text2" draggable='true' ondrag="drag('.test2')">Text 2</div>