1
3
有几个问题:
如果一切都是静态的(固定的网格大小,固定的div位置,没有动态div),我建议构建两个索引来将div映射到坐标,并将坐标映射到div,比如(根据每个div的位置给每个div一个id,例如“x0y0”,“x0y1”):
给定一组坐标(x,y),可以通过以下公式得到相应的div:
给定一个div,你可以得到它的坐标:
|
2
1
除非您有非常严格的性能要求,否则只需使用“row”和“col”属性就可以了(尽管通过.data()设置它们会更快)。要找到具有正确行/列的div,只需执行以下操作
让我详细说明一下。 http://plugins.jquery.com/project/dataSelector . |
3
1
一开始似乎效率不高,但我认为这样做最好:
在dom ready上,只需创建一个2D数组并存储jquery对象,将div指向那里,这样
要移动元素,您只需交换它们的css属性(或者类,如果可以的话,它会更快),或者只要设置它们(如果您有包含这些信息的数据)。
另一件超快速的事情(不久前在我的项目中已经实践过)是您只需将click事件绑定到主容器,并通过拆分来检查坐标
如果你把点击绑定到一个100x100的网格上,浏览器可能会死掉。你去过那里吗;) 它可能不是直观的(不是改变div的位置,而是交换内容等等),但根据我的经验,它是最快的(大多数事情都是在dom ready上完成的) 希望您能使用它;)祝你好运。 |
4
0
我不能100%确定我是否理解您想要什么,但是如果您关心性能,我建议您避免使用jQuery之类的库。虽然jQuery最近变得更快了,但它的开销仍然比“纯”JS/DOM操作要大。 其次,根据您希望支持哪些浏览器,考虑使用canvas或SVG脚本可能更好。 |
Softly · 单选按钮未按预期取值 1 年前 |
SlickRed · 我无法使用JS关注HTML元素 1 年前 |
assembler · Nextjs没有处理发布请求 1 年前 |
BADRUM · 执行两个获取功能后,如何导航回页面? 1 年前 |
Toniq · javascript为php保存多维数组 1 年前 |