怎么用js写下拉框?

http://www.39.net/
http://hao.360.cn/
也就是这两个网站上搜索框之前的选择搜索种类的效果,以前从没接触过js,现在要求一个上午写出来,哭了,谁能给个思路?或者是现成的源码,谢了,用jquery也行

阅读 13.9k
5 个回答

jquery有个Plugin可以用:jQuery AutoComplete
Bootstrap也有类似的Plugin:Bootstrap typeahead

原理上来说就是在Keyup的时候做regular expression的匹配,在下拉框里插入符合条件的结果,然后显示隐藏的下拉框。还有很多细节可以考虑,比如鼠标点下拉框如何,有些时候keyup的时候需要用AJAX去后台拿结果,如果点击了除了搜索框和下拉框的其他地方,下拉框应该隐藏等细节。

其实思路比较简单的,我也简单说一下,最普通的方式:
1、把样式都写好,包括下拉框显示出来的效果,一般为了达到弹出菜单的效果,所以用绝对定位对展开的下拉框进行定位
2、把写好的下拉框用 css 进行隐藏
3、给要触发下拉框的元素绑定事件,click 或者 mouseover,然后触发事件的时候,判断切换一下下拉框的显示和不显示

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题