【发布时间】:2015-01-15 18:22:45
【问题描述】:
我正在尝试使用可拖动和可调整大小的 jQuery 函数,但我可能需要将这段代码的一点点更改为 jQuery。
我有这个 HTML 代码:
<div id="resizable2" class="ui-widget-content">
<h3 class="ui-widget-header">MS</h3>
</div>
这对 jQuery 很有效:
$(function() {
$( "#resizable" ).draggable();
$( "#resizable" ).resizable();
}
然后,我尝试将它与 javascript 创建的 div 一起使用:
function addnewbox() {
var newDiv = document.createElement("div");
var h = document.createElement("h3");
var text = document.createTextNode("MS");
document.body.appendChild(newDiv);
newDiv.appendChild(h);
newDiv.className = "ui-widget-content";
h.appendChild(text);
h.className = "ui-widget-header";
newDiv.id = "resizable";
}
它不工作
【问题讨论】:
-
不工作怎么办?你能发个fiddle 让我们看看问题所在吗?
-
在当前元素上调用
draggable()和resizable()。当您创建一个新元素时,您必须手动使它们也可拖动和调整大小。除此之外,你不能创建与现有元素具有相同 id 的元素(你可以,但你不应该) -
Javascript 以线性方式执行,这意味着您声明函数的顺序会影响调用它们的时间。要使新的 div 可调整大小,您必须在创建后对其调用
draggable()和resizeable()方法 - 就像下面的答案一样。
标签: javascript jquery html jquery-ui dom