0

这是我正在尝试开发的益智游戏的片段。each()问题是它在调用 jquery后停止工作。请帮我找出问题所在。提前致谢。

    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!");
        }
    }

totalInPositionPieces并且totalPieces是全局变量。

4

2 回答 2

2

您应该将函数的var totalInPositionPieces外部定义为each在任何其他函数的范围内或其外部都可以访问。
对于totalPieces. 你在哪里定义它?

也探索这些东西:http ://api.jquery.com/jQuery.data/

于 2013-01-21T20:42:54.420 回答
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!");
        }
    }
于 2013-01-21T21:11:10.140 回答