我正在尝试使用prototype / scriptaculous将内容拖到textarea中,编辑文本区域,然后继续拖放更多内容。拖放工作正常,但是一旦我编辑textarea中的内容,drop就会停止工作。
我把它变成test case
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>dragdrop testcase</title>
<script type="text/javascript" src="/shoppingZend/public/javascript/scriptaculous/lib/prototype.js"></script>
<script type="text/javascript" src="/shoppingZend/public/javascript/scriptaculous/src/scriptaculous.js?load=effects,dragdrop,controls"></script>
</head>
<body>
<div id="content_1" class="drag">Content 1</div>
<div id="content_2" class="drag">Content 2</div>
<div id="content_3" class="drag">Content 3</div>
<textarea id="drop"></textarea>
<script>
new Draggable('content_1', {
revert: true
});
new Draggable('content_2', {
revert: true
});
new Draggable('content_3', {
revert: true
});
Droppables.add(
'drop', {
onDrop: function(dragged, dropped, event) {
dropped.innerHTML += dragged.innerHTML;
}
}
);
</script>
</body>
</html>
如果它是浏览器问题(我怀疑它是):我只在Linux上使用Firefox,它是一个非常私密的网站,不需要在其他地方工作。
知道我可以在哪里开始调试吗?
答案 0 :(得分:0)
PrototypeJS将textarea作为表单元素处理。所有表单元素都有一个value属性(例如select,input,textarea)。所以,试试Geek Num 88的建议:
dropped.value += dragged.innerHTML;
我尝试使用Chrome,FF和IE,它似乎运行正常。
Domus71