仿微信的搜索功能

Posted dehuachenyunfei

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了仿微信的搜索功能相关的知识,希望对你有一定的参考价值。

使用weui来开发基于微信公众号,weui地址:https://weui.shanliwawa.top/index.html

input的type设置为search,而且外面要用form表单包围,这样再移动端弹起软键盘的时候,才能显示搜索,不然一般是换行

<form class="weui-search-bar__form" action="javascript:return true;">
        <div class="weui-search-bar__box">
          <i class="weui-icon-search"></i>
          <input
            class="weui-search-bar__input"
            id="searchInput"
            @focus="focusfns()"
            placeholder="请输入搜索内容"
            type="search"
          />
          <a href="javascript:" class="weui-icon-clear" id="searchClear"></a>
        </div>
        <label
          class="weui-search-bar__label"
          id="searchText"
          style="transform-origin: 0px 0px 0px; opacity: 1; transform: scale(1, 1);"
        >
          <i class="weui-icon-search"></i>
          <span id="serach_size">请输入搜索内容</span>
        </label>
</form>

$(function()
var $searchBar = $("#searchBar"),
$searchResult = $("#searchResult"),
$searchText = $("#searchText"),
$searchInput = $("#searchInput"),
$searchClear = $("#searchClear"),
$searchCancel = $("#searchCancel");
function hideSearchResult()
$searchResult.hide();
$searchInput.val("");
function cancelSearch()
hideSearchResult();
$searchBar.removeClass("weui-search-bar_focusing");
$searchText.show();
$("#searchTemplate").hide();
$("form.weui-search-bar__form").submit(function()
//提交需要做的事情
);
$("#searchInput").bind("input propertychange", function()
let searchContent = $("#searchInput")
.val()
.trim();
if (searchContent == "")
$("#searchResult").hide();
$("#searchTemplate").show();
);
$searchText.on("click", function()
$searchBar.addClass("weui-search-bar_focusing");
$searchInput.focus();
);
$searchClear.on("click", function()
hideSearchResult();
$("#searchTemplate").show();
$searchInput.focus();
);
$searchCancel.on("click", function()
cancelSearch();
$searchInput.blur();
);
);

注意:form表单有自动提交功能的,所以设置action:javascript:return true;,虽然语法上不合理,但是没有关系,这个只是控制台报错。

而且之前我使用click绑定事件,然后返回false,例如:

<form class="weui-search-bar__form" @click="onClick()">
...
</form>
function onClick()
return fasle;


但是出现ios弹出软键盘之后,输入文字,不显示搜索字体而且电脑端enter键不会搜索,所以最终采用
action:javascript:return true;解决。

以上是关于仿微信的搜索功能的主要内容,如果未能解决你的问题,请参考以下文章

如何在网页端实现一个仿微信的聊天窗口

仿微信添加标签效果

Flutter项目开发之仿微信的Excel报表

Flutter项目开发之仿微信的Excel报表

android 仿微信demo————微信顶部操作栏搜索按钮实现(查询通讯录好友功能)

android 仿微信demo————微信顶部操作栏搜索按钮实现(查询通讯录好友功能)