기본적으로이 YUI 예제/데모를 확장하여 요소가 요소로 드래그 될 때 '대상'상자 하나를 업데이트하는 대신 여러 대상 상자를 선택할 수 있도록합니다. 공식 야후의 예는 http://developer.yahoo.com/yui/3/examples/dd/delegate-drop.htmlYUI dragdrop 플러그인을 사용하는 여러 개의 드롭 타겟?
에서 관련 코드를 찾을 수 있습니다
<div id="play">
<div id="demo">
<ul>
<li>Item #1</li>
<li>Item #2</li>
<li>Item #3</li>
<li>Item #4</li>
<li>Item #5</li>
<li>Item #6</li>
<li>Item #7</li>
<li>Item #8</li>
<li>Item #9</li>
<li>Item #10</li>
</ul>
</div>
<div id="drop">Drop on me</div>
</div>
<script>
YUI({ filter: 'raw' }).use('dd-delegate', 'dd-drop-plugin', function(Y) {
var del = new Y.DD.Delegate({
container: '#demo',
nodes: 'li'
});
del.on('drag:end', function(e) {
del.get('currentNode').setStyles({
top: 0,
left: 0
});
});
var drop = Y.one('#drop').plug(Y.Plugin.Drop);
drop.drop.on('drop:hit', function(e) {
drop.set('innerHTML', 'You dropped: <strong>' + e.drag.get('node').get('innerHTML') + '</strong>');
});
});
</script>
나는 일 동안 구축을 위해 노력했습니다하지만 난 이해가 안 돼요 너무 많은 요인이있다. 내가 한 가지 방법은 각 대상 상자를 순환하고 'var drop = Y.one ...'등의 바인딩을 수행하는 루프를 작성하는 것이었지만 결과는 어떤 상자를 드래그했는지에 관계없이 마지막 하나는 (내가 생각하는 자바 스크립트에서 폐쇄와 관련이 있기 때문에) 업데이 트됩니다
편집 : 말할 것도없고, 나는 많은 대상이 '대상 컨테이너'안에 비슷한 일이 드롭 기능을 적용하려면 YUI가 필요합니다 드래그 요소가 설정되는 방법. 나는 얼마나 많은 사람들이 사전에 있을지 모르기 때문에 각 div를 무시할 수 없다.