游戏地图问题,使用jquery构建

时间:2011-02-15 22:33:05

标签: javascript jquery

我正在使用jquery为浏览器游戏构建地图。基本上它的网格使用div来显示地图内容的背景图像。它使用大的div,然后一旦你滚动得更近,就用较小的div(对于实际的图像)填充那些较大的div。它使用点击和拖动事件处理。

现在一切都按预期工作,我没有遇到任何问题。我遇到的问题是,如果你点击并拖动地图,一旦它填充下一个区域(这样做是因为如果你要一直加载整个地图,地图的性能是微不足道的)显然需要一两秒才能加载数据,在此期间我的点击和拖动事件不起作用,所以最终感觉地图已经锁定在你身上。

所以我想我正在寻找的是一种加载数据的方式,你仍然可以点击并拖动或者一些建议来更好地填充网格样式地图。 (我目前正在使用100x100(每平方图90px),所以它像90000px x 90000px。任何帮助都会很棒

2 个答案:

答案 0 :(得分:1)

正如我所看到的,问题的基础是围绕大型操作的一种方式,可能会锁定浏览器的UI线程(使浏览器无响应)。 WebWorkers是一种解决方案,但它们还没有完全跨浏览器。查看文档:{​​{3}}

除此之外,你只需要分割工作。另外,在将数据发送到客户端之前,请查看服务器端代码以查看是否还有其他任何操作可以执行。如果可以在服务器端执行,请执行此操作。你正在减轻客户的负担,这将提高感性表现。

答案 1 :(得分:0)

您如何调用函数来加载数据?确保以异步方式加载数据(通过Ajax)。

此外,您可以尝试排队数据加载请求,并仅在停止/完成拖动后执行它们。