javascript - 为什么 jQuery 的 droppable 和draggable 不能按预期工作?

标签 javascript jquery html css jquery-ui

有人可以告诉我为什么是第二个 if 语句条件满足吗?

这是代码

$("#car").draggable({
    start: function(event, ui) {
        if (!done) return false;
    },
    stop: function(event, ui) {
        if (counter >= 40 && $(".correct").length == $(".drop").length) {
            setTimeout(function() {
                $('#win').text(winner +' '+ 'stars' + ' ' + 'earned' + ' Completion time' + ' ' + counter + ' seconds');
            }
        }
    }
});

// for droppable...
$("#carDrop").droppable({
    accept: "#car",
    drop: function(event, ui) {
        if(ui.draggable.is("#car")){
            $(this).addClass("correct");

            ui.draggable.fadeOut(500);
            $(this).fadeOut(500,function(){

            });
        }
    }
});

我使用警报框检查了 . Correct.drop 的长度,. Correct 的长度为 8,.drop 的长度为 8 code>.drop 是 5。但是当我拖动图像并将其放下时,第二个 if 语句正在工作,它没有意义。 Here is fiddle 。它在 fiddle 中不起作用。我认为fiddle中的框架有问题。

最佳答案

是否会在 droppable 的 drop 事件之前触发draggable 的 stop 事件?这可以解释为什么没有 . Correct 类导致该语句计算结果为 'undefined' == 'undefined',因此为 true

关于javascript - 为什么 jQuery 的 droppable 和draggable 不能按预期工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37717308/

相关文章:

javascript - raphaeljs bbox 集合中出现问题

javascript - 有没有什么方法可以在 JavaScript 中暂停函数等待输入?

javascript - 如何将数据从 Java 传递到 JavaScript Web 应用程序?

javascript - Backbone.js - 向页面呈现一个新元素

javascript - 将开始 div 标签添加到元素和结束 div 标签到另一个元素

html - 为什么我的网站有水平滚动条?

javascript - ExtJS 4 - JsonStore + 发布请求的问题

php - 使用 jQuery 的配置文件背景自定义?

javascript - Srcset 似乎不适用于 iOS7 中的移动 safari?

javascript - 当用户切换选项卡时,使用 setInterval 淡入淡出的内容无法正常工作