Я пытаюсь использовать перетаскиваемую и изменяемую по размеру функцию jQuery, но мне, возможно, придется немного изменить этот код на jQuery.Изменение JavaScript в jQuery - createElement
У меня есть этот HTML код:
<div id="resizable2" class="ui-widget-content">
<h3 class="ui-widget-header">MS</h3>
</div>
Это прекрасно работает с JQuery:
$(function() {
$("#resizable").draggable();
$("#resizable").resizable();
}
Но тогда, я пытался использовать его с DIV, созданный JavaScript:
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";
}
И он не работает
Не работает как? Не могли бы вы сделать [скрипку] (http://jsfiddle.net), чтобы мы могли увидеть проблему? –
'draggable()' и 'resizable()' вызывают текущие элементы. Когда вы создаете новый элемент, вы должны вручную их перетаскивать и изменять размер. Кроме того, вы не можете создавать элементы с одинаковыми идентификаторами существующих (вы можете, но не должны) – devqon
Javascript выполняется линейным образом, что означает, что порядок, в котором вы заявляли, что ваши функции влияют, когда они вызываются. Чтобы сделать новый div resizeable, вы должны вызвать методы 'draggable()' и 'resizeable()' на нем после его создания - как в ответах ниже. – Craicerjack