私のコードは、1つを除いて、計画どおりに機能します。濃い灰色のボックスをクリックすると、オレンジ色のボックスがshow();とともに表示されます。
ただし、青いドラッグ可能なdivをオレンジ色のボックスにドロップすると、紫色のボックスが表示されるようにします。これはうまくいかないようです。
あなたへの私の質問は、それが数行上で機能するのに、なぜこれがドロップ関数で機能しないのか、そしてどうすればこれを機能させることができますか?
紫色のdivをオレンジ色のdivの中に配置しようとしましたが、表示されるのは1回だけです...助けていただければ幸いです。理解できない場合はお知らせください。
JsFiddle(問題はドロップ可能な関数にあります)
jQuery
$('.lightgray').hover(
function() {
$(this).find('.darkgray').fadeTo('fast', 0.5);
}, function() {
$(this).find('.darkgray').fadeOut('fast');
});
$('.lightgray').bind("click", function(event) {
$(this).find('.orange').show();
$(this).unbind('hover');
});
$("#draggable_blue").draggable({
revert: true
});
$('.orange').hover(
function() {
$(this).find('.darkgray').fadeTo('fast', 0.5);
}, function() {
$(this).find('.darkgray').fadeOut('fast');
});
$(".orange").droppable({
drop: function() {
$(this).find('.purple').show();
}
});
HTML
<div id="wrapper">
<div id="container">
<div class="lightgray">
<div class="darkgray">
</div>
<div class="orange">
</div>
<div class="purple">
</div>
</div>
<div class="lightgray">
<div class="darkgray">
</div>
<div class="orange">
</div>
</div>
<div class="lightgray">
<div class="darkgray">
</div>
<div class="orange">
</div>
</div>
<div class="lightgray">
<div class="darkgray">
</div>
<div class="orange">
</div>
</div>
<div class="orange">
</div>
<div class="lightgray">
<div class="darkgray">
</div>
<div class="orange">
</div>
</div>
<div class="lightgray">
<div class="darkgray">
</div>
<div class="orange">
</div>
</div>
<div class="lightgray">
<div class="darkgray">
</div>
<div class="orange">
</div>
</div>
<div class="lightgray">
<div class="darkgray">
</div>
<div class="orange">
</div>
</div>
<div id="menu">
<div id="draggable_blue">
</div>
</div>
</div>
</div>