HTML/Javascript系统,用于同一页面中的许多不同弹出窗口和小部件
HTML/Javascript system for many different popups and widgets in the same page
我正在制作一个HTML5页面(游戏),它使用许多弹出窗口和各种小部件在同一页面中出现和消失。
为了实现这一点,我可以
-
让页面中列出的所有弹出窗口和小部件都是不可见的(就像我看到的很多例子一样),并保持只切换可见性。
-
使用Javascript动态添加和删除。我可以将每个弹出窗口作为HTML片段放在一个单独的文件中(?)。
秒是"模块化的",我喜欢页面中没有我没有实际使用的元素。但我不知道性能(每次加载HTML、DOM插入等)
有更可取/标准的方法吗?
如果我们谈论的是从服务器加载HTML,那么这显然是无效的。
我不知道你在写什么样的游戏,但我不认为性能会有任何明显的差异(除了从服务器加载数据),除非你每秒创建数千个弹出窗口(我对此表示怀疑)。老实说,你的游戏没有使用4GB的内存。:)如果是这样,那么你可能做错了什么。我不认为有任何标准的方法。这更像是你的感受。:)
例如,我总是尝试用一个请求从服务器加载每一个可能的数据,并将其存储在客户端,因为大多数性能问题实际上与客户端-服务器通信有关。我也喜欢DOM是干净的,所以在大多数情况下,除了表单的隐藏字段之外,我都用JavaScript保存(隐藏的)数据。
另一方面,如果我有讨论的博客,并且我加载了一些额外的数据(例如用户数据,它应该在点击用户名后显示为弹出窗口),我倾向于将其存储在DOM元素中,因为控制它更容易(至少对我来说)(我说的是jQuery和jQuery UI)。
请注意,重新创建弹出窗口可能会导致内存泄漏,但如果您使用一些流行的库(例如jQueryUI),则这种情况极不可能发生。
相关文章:
- 内部分区字体大小获胜'调整浏览器窗口大小时不会随媒体查询而更改
- 为什么不是't窗口.恢复正常工作吗?(javascript/jquery)
- 为什么不显示警报窗口
- YouTube作为弹出窗口在桌面版本上播放,但不在移动设备上播放
- 构建JS测试,警报窗口重复上一个Q,而不是问下一个Q
- 失败:等待Protractor与页面同步时出错:“”;在窗口上找不到角度”;
- 当有许多形式时,Fancybox脚本不起作用
- 推特引导:弹出窗口不会在第一次点击时出现,但会在第二次点击时显示
- 为什么不'我的窗口滚动事件根本没有启动.其他答案没有解决问题
- 当我浏览回页面时,谷歌地图信息窗口不会弹出
- Angular$scope在模式窗口内不起作用
- 更改不在引导模式窗口中工作的月份和年份
- 在窗口中单击按钮完成之前,光标不会停止.请继续卸载
- 如何在新选项卡中而不是在新窗口中打开URL
- 函数打开链接时不使用弹出窗口阻止程序
- JS-窗口宽度函数不起作用
- TinyMCE全屏不允许出现模式窗口
- 它是否创建了许多不利于JavaScript性能的变量
- chrome.tabs.create的回调不会在弹出窗口中触发
- Javascript em根据窗口/视口尺寸调整大小,不影响文档样式的text/css