0

当我查看人们添加到 Scriptaculous 的内容时,我发现了一些有趣的代码,并且我正在尝试修改它以达到我的目的。我得到了几乎所有的工作,除了当我粘贴放置处理程序代码时,我的页面停止加载。

这是相关的snipits:

对于可拖动对象:

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,但我并不那么熟悉,所以它可能与旧代码有关?或者它可能有一些问题,我不够好看到。

4

1 回答 1

1

您在此行末尾缺少一个结束引号:

newnode.setAttribute("className", 'classname);

如果还是有问题,我建议你尝试使用Firebug调试脚本,看看是哪一行导致了错误。

于 2009-08-10T15:25:51.317 回答