-1

我正在尝试查看此漫画中的单个图块:http: //xkcd.com/1110/

我查看了 JavaScript,但无法弄清楚命名约定。

for (var y = -1; y <= +1; y++)
    for (var x = -1; x <= +1; x++) {
        var name = tile_name(centre[0] + x, centre[1] + y);
        var tile = $map.find('.tile' + name);
        if (tile.length) $remove = $remove.not(tile);
        else {
            $image = $('<img class="tile' + name + '" src="http://imgs.xkcd.com/clickdrag/' + name + '.png" style="top:' + ((centre[1] + y) * tilesize) + 'px;left:' + ((centre[0] + x) * tilesize) + 'px; z-index: -1; position: absolute;;" style="display:none" />');
            $image.load(function() {
                $(this).show()
            }).error(function() {
                $(this).remove();
            });
            $map.append($image);
        }
    }

$remove.remove();

我期待: http: //imgs.xkcd.com/clickdrag/1.2.png但这不起作用。

谢谢您的帮助!

4

2 回答 2

1

你应该看看这个函数:它创建了瓦片的名称。

    tile_name=function(x,y)
    {
        x-=size[3];
        y-=size[0];
        return (y>=0?(y+1)+'s':-y+'n')+(x>=0?(x+1)+'e':-x+'w')
    };
于 2012-10-31T16:32:44.833 回答
0

命名方案是\dn\dw,例如 2n2w。当心,有些丢失了。

于 2012-10-31T16:28:30.183 回答