【发布时间】:2017-08-13 22:11:48
【问题描述】:
我有一个连接到 MySQL 数据库的自动完成搜索字段来检索值,它是为 Java 游戏编码的(它有项目 id、名称和图片)
已添加 20,000 个项目。它应该是一种查找,实际上,当您单击一个选项时,它会打印有关该物品的更多信息,例如游戏内价格和描述等。
问题在于它会延迟并且需要时间,因为要加载 20,000 张图片,我有点希望它显示图片以便玩家可以更轻松地找到东西。我确实知道,只需从显示中删除图片就不会滞后。
我想出的一个新想法是在开始搜索之前将最小字符设置为 3,这是最小的项目字母。这将有助于减少滞后,就好像项目的名称是“派对帽”,玩家需要写“par”或其他任何东西,所以它只会加载 100-500 个值,而不是只输入“a”并加载至少 70-80% 的值包含“a”,或“swo”代表“sword”。
其他人建议压缩图片,但20,000张图片实际上是18mb,每张图片大约1kb?
搜索字段仅加载结果图片,因此如果您将网站保持打开 1 小时,则不会加载任何图片,因为服务器尚未调用或请求加载特定图片。如果您输入内容,它会加载与您的搜索匹配的所有图像,即结果。 (100-1000 或其他)
有什么解决这个问题的建议或想法吗?
可以在这里找到它的外观示例..
感谢阅读!
【问题讨论】:
-
我过去对自动完成类型字段所做的一件事是在用户停止输入后等待一两秒再加载建议。这样,如果他们键入 6 个字符,您的代码将不会尝试加载字符 3、4 和 5 的自动完成结果,只要在字符 6 处停止键入一次,这应该意味着结果中的匹配更少。
标签: javascript image performance load lag