Это потому, что .resizable()
вычисляет начальный размер на основе цели.В вашем случае вы изменяете размер изображения перед добавлением его в DOM, и поэтому размер изображения неизвестен, так как он еще не был загружен, что приводит к размеру 0.
Если вы добавите изображение перед изменением его размера, оно должно работать нормально.Вот так:
var spanid = 1;
$("button").click(function() {
var elm = $('<img id=spanId' + spanid + ' src="http://www.carsyouwilldrive.com/wp-content/uploads/2009/06/futurecar1.jpg"/>');
elm.appendTo('p').resizable().parent().draggable({
cursor: "move"
});
spanid++;
});
Также я рекомендую отключить в браузере перетаскивание и выбор изображения по умолчанию.Вы можете сделать это, добавив .disableSelection()
(в настоящее время недокументированное) к элементу изображения.