javascript - 如何实现输入框提示功能?
回复内容:
给定一个输入框,一个搜索点击按钮,当输入框获得焦点时提示用户最近搜索内容,如何实现,有哪些方法。从哪些方面测试以保障其健壮性。
说说思路。
建立一个隐藏的ul列表,待选项在列表里面。
把曾经的输入内容以数组的形式存储在localstorage内。
设置待选列表数组的最大长度,先进后出。
把数组内容提取并渲染到列表上。
建议用localstorage储存这样持久性的数据
cookies主要用来验证身份
用户搜索记录一般存在数据库中,当用户打开你的站点之时,就默认加载最近的记录到redis等缓存中,然后输入框获得焦点时就触发js事件,用ajax去从后台获得相应的数据,后台直接从缓存中获取数据返回给前端。缓存的主要作用是一个用户在一次搜索过程中只需触发一次数据库操作。用户搜索后更新缓存,当用户退出站点后,缓存更新到数据库。
从简的话 使用cookie
保证兼容 还是cookie
类似客户端的数据除了放在cookie 还可以考虑内存数据库 如楼上提出的redis 或者 memcached
用cookie记录用户最近搜索词,当用户输入的时候取cookie并从值中匹配,然后就是提示给用户了
1,将热门或近期搜索内容存储到json文件或数据库中。
2,将搜索内容放到本地。
3,输入搜索内容时用文本相似算法,输出与输入内容相似最高的几个搜索内容。
locationStorage保存用户的搜索历史,然后遍历出来
上一篇: php获取mysql中文后显示乱码,能帮修改一下吗
下一篇: google发布KeyCzar加密工具
推荐阅读
-
JavaScript实现的前端AES加密解密功能【基于CryptoJS】
-
JavaScript基于replace+正则实现ES6的字符串模版功能
-
用JavaScript实现页面重定向功能的教程
-
jQuery实现input输入框获取焦点与失去焦点时提示的消失与显示功能示例
-
JavaScript实现定时页面跳转功能示例
-
jQuery实现模拟搜索引擎的智能提示功能简单示例
-
JavaScript实现的简单Tab点击切换功能示例
-
JavaScript控制输入框中只能输入中文、数字和英文的方法【基于正则实现】
-
JavaScript编程开发中如何使用jquery实现放大镜效果
-
html移动应用 input 标签 清除按钮功能如何实现(不触发键盘)