我有一个网页,我可以点击它来添加图像。如果我再点击图片,它会变大,如果我再次点击,它会将其大小调整回原始大小。 如果我然后单击屏幕上的其他位置,我可以创建另一个图像,并通过单击它来增大和缩小此图像。 问题是只有最新的图像可以通过点击调整大小,即使没有任何变量被删除或更改。 这是我正在开发的游戏的一部分。 我用尽可能少的代码做了一个示例页面来试用它,并可以在这里找到。 http://johncleary.net/hg/ 我要的是能够在任何时候点击任何图像上,它会不断地缩小为什么只能调整我最近添加的页面元素的大小?
0
A
回答
3
从网页上的代码,我看到你正在使用innerHTML += ...
添加新的图像 - 这ISN”这是一件非常好的事情,因为它会导致浏览器每次都重新创建所有内部元素,而这种可能会导致与事件处理程序发生奇怪的交互。
考虑使用DOM方法来创建和添加元素,例如:
var e = document.createElement('img');
e.id = id;
e.onclick = pieceClicked; // No parameter required, this.id is available directly inside the function
...
board.appendChild(e);
其他一些旁注:
您使用
xPix * yPix
作为ID的一部分:如果你期望这是唯一的,它可能不是。例如,x = 500, y = 10
和x = 10, y = 500
将导致相同的ID。如果仅仅使用xPix + ',' + yPix
作为一个字符串本身?初始化
Pieces[id]
的几行可以使用对象表示法简化为更简单的形式:Pieces[id] = { Piece: ..., xPix: ..., yPix: ... }
。
相关问题
- 1. 为什么我的Jquery元素不能调整大小?
- 2. 为什么只添加到JFrame的最后一个JPanel调整大小?
- 3. 页面元素的大小调整页面
- 4. 为什么我的div调整大小?
- 5. 元素只能在jquery点击元素时调整大小
- 6. 将html元素大小调整为最大浏览器大小
- 7. 如何在添加元素到DOM后调整jQuery Mobile页面的大小?
- 8. 自动调整大小的iframe无论什么页面加载
- 9. 调整大小的元素
- 10. 元素的调整大小
- 11. 为什么添加SpinnerDateModel时,我的JSpinner调整大于所需的大小?
- 12. 为什么我的tableview中的单元格调整大小
- 13. 为什么添加JS的元素与页面加载时的元素不同?
- 14. jQuery只加载调整大小,我希望它加载调整大小和页面加载
- 15. 调整窗口上的html元素的大小调整大小
- 16. 为什么我的文本框不能调整大小?
- 17. 为什么我的图片不能调整大小?
- 18. 为什么我的导航栏不能调整大小?
- 19. 为什么HTML输入元素被浏览器调整大小?
- 20. 为什么jQuery不能识别我的页面上的元素?
- 21. jS居中功能不适用于页面加载的一个元素,只是调整大小
- 22. 在调整窗口大小时调整UI元素的大小
- 23. 动态调整窗口大小为jquery的元素的大小
- 24. 使悬停调整大小元素只影响元素
- 25. 在调整页面大小时调整图像的大小页面
- 26. 为什么JFrame在添加图像时自行调整大小
- 27. 在页面加载时调整元素大小时不一致的jQuery函数
- 28. 当我调整html页面的大小时,元素正在移动
- 29. 在页面加载时添加填充并调整大小
- 30. 为什么我的CSS3框中的最后一个元素大小太大?
'pieceC'变量有什么意义?我没有看到任何理由。 – 2010-10-26 03:27:41
您的标题应该是您问题的摘要;像“请帮助我”这样的标题对于您的问题不是很好的广告。 – meagar 2010-10-26 03:29:00