In this plunk我有一个输入字段类型的文本,其中jQuery可调整大小/可拖动。有两个问题。首先,可拖动不起作用。其次,即使我指定了“全部”,可调整大小也只能使用“东南”手柄。 Hox来解决这个问题?
HMTL
<input type="text" class="field" />
JavaScript
$( document ).ready(function() {
$(".field").draggable({ });
$(".field").resizable({
handles: "all"
});
});
答案 0 :(得分:2)
将Draggable分配给文本字段是不好的。浏览器预期会发生单击事件以输入光标,因此不会轻易放弃控制。
我建议如下:
$(function() {
$(".field-wrapper").draggable({
handle: ".handle"
})
.resizable({
handles: "all",
resize: function(e, ui) {
var s = ui.size;
$(".field", this).width(s.width - 40).height(s.height);
$(".handle", this).height(Math.round(s.height / 2) + 20).css("margin-top", (Math.round(s.height / 2) - 20) + "px");
}
});
});
.field-wrapper {
width: 245px;
border: 1px inset #ccc;
border-radius: 6px;
padding: 0;
}
.field-wrapper .handle {
display: inline-block;
cursor: move;
}
.field-wrapper .field {
border: 0;
padding: 0;
padding-left: .5em;
margin: -1px 0;
border-left: 1px solid #ccc;
}
<link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">
<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>
<div class="field-wrapper">
<span class="handle ui-icon ui-icon-grip-dotted-vertical"></span>
<input type="text" class="field" />
</div>