Я нашел какой-то интересный код, когда смотрел на то, что люди добавили в Scriptaculous, и я пытаюсь изменить его для своих целей. У меня почти все работает, за исключением случаев, когда я вставляю код обработчика отбрасывания, моя страница перестает загружаться.
Вот соответствующие фрагменты:
Для Draggables:
for (i=0; i<=50; i++){
Squad = 'Squad' + i
if($(Squad)){
new Draggable(Squad,{revert:true});
Для Droppables:
Droppables.add('ToEast', {
accept: ["Nurse","Squad","Doctor"],
onDrop:function(e){DropHandler(e,'ToEast')}
});
Обработчик дропа:
function DropHandler(element,el){
var newnode = document.createElement('img');
var classname = element.className;
newnode.src="images/"+IdCatcher+".jpg";
newnode.id = IdCatcher;
$(el).appendChild(newnode);
newnode.setAttribute("class", 'classname');
newnode.setAttribute("className", 'classname);
new Draggable(newnode.id,{revert:true});
element.parentNode.removeChild(element);
}
Я заменил код на «alert ()», и он начал работать нормально, поэтому что-то в этом последнем блоке работает не очень хорошо. Мне пришлось модифицировать большую часть их кода, чтобы он работал с текущей версией scriptaculous, но я не настолько знаком, так что это может иметь отношение к старому коду? Или может быть что-то не так с этим, что я недостаточно хорош, чтобы это увидеть.