脚本没有运行jquery .each

时间:2013-01-21 20:39:48

标签: javascript jquery

这是我正在努力开发的益智游戏的片段。问题是它在调用jquery each()后停止工作。请帮我弄清楚问题所在。提前谢谢。

    function setTotalInPositionPieces()
    {
        $("#board").children('div').each(function(index, element) {
            if(testInPosition(element))
            {
                ++totalInPositionPieces;
                $(element).attr("data-inPositionStatus", '1');
            }
        });

    /* The script does not from here, onward. Please tell 
me what is the problem.*/

        if(totalInPositionPieces == totalPieces)
        {
            $("#messageBox").text("Puzzle Solved!");
        }
    }

totalInPositionPiecestotalPieces是全局变量。

2 个答案:

答案 0 :(得分:2)

您应该在var totalInPositionPieces函数之外定义each,以便在任何其他函数或其他函数的范围内可以访问。
同样适用于totalPieces。你在哪里定义它?

也可以探索这些内容:http://api.jquery.com/jQuery.data/

答案 1 :(得分:0)

function setTotalInPositionPieces()
    {
        var list = $("#board").children('div');
        var totalInPositionPieces = 0;

        $.each(list, function(index, element) {
            if(testInPosition(element))
            {
                ++totalInPositionPieces;
                $(element).attr("data-inPositionStatus", '1');
            }
        });

        if(totalInPositionPieces == totalPieces)
        {
            $("#messageBox").text("Puzzle Solved!");
        }
    }