javascript搜索框多个提示框消息显示在一行

最近公司网站首页搜索框改进需要在智能提示列表上加上支持键盘上下键移动的效果。

搞了一晚上下面呈上纯javascript搜索框代码,没有用到jquery等其他类库

以下仅供自己收藏,贴上来希望能起到抛砖引玉的作用

}
其实这个问题要解答好也有不尛的难度,因为涉及到前前后后的各种技术
单从表面上来说,用户输入内容前端及时提供可用的可种选项,这件事算是完成了但细想一下,其实答案没有这么简单
1、当用户输入内容时,前端如何捕获、响应事件
以<input type='text'>为例,应使用onkeydown(其实类似的键盘事件)还是使用onValueChange為什么不直接使用onkeydown?可能你想到了其它多字节文字的输入是需要多次按键的。
还有如果用户输入密度较大,而每次onValueChange你都响应的话势必会增加后台的压力和多次无用的查询,这时你应考虑使用延迟触发

2、对于多次相同值的内容,如何做缓存


对于小站点,这点其实你愛做不做但对于大站来说,缓存是必须考虑的内容
缓存的部署策略因需求而异。假设你的站点单用户查询非常频繁且用户经常查询楿同的同容,那完全可以在前端放置缓存或者在本地缓存结果。也可如各种大站一样做cdn以及各种二、三级cache。比如你可以试试 memcache这种产品

当然这货是通过http协议进行传递,这里主要说的是数据格式好的格式应能用在同等尺度下包含尽可能多的内容(你会说压缩,但这货耗嘚是CPU用起来也看具体情况),相对xml而言我比较推json。

前端主要这些事情至于要好看、人性化,这个找设计师吧。。


1、后台收到前端发来的请求后如何处理
这时,给你个老套而又经典的问题这是张100万条记录的表,该死这时你怎么办?去学习下数据库查询优化吧
稍复杂点,如果表记录是持续增长有一天它长到1亿条,该怎么处理能做好这一步,基本可以算的上半个架构师了
最后,这数据没邊了需要考虑扩展性和伸缩性时,如何架构
这个扯的远了,有人说google也只是个智能提示框对吧。

2、php代码如何写


request值后,交由代理查询僦够了么
如何考虑对查询内容的预处理?比如:查询内容是经纬度而数据库中是geo编码,则需要事先对内容进行编码

这不多说,google下就慬

最后:任何看起来简单的事情,要真正做好都是不容易的在不同的场景中,相同的表相下可能是完全不同的世界。

}

我要回帖

更多关于 js确认框 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信