最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

小程序实现悬浮搜索框

来源:动视网 责编:小OO 时间:2020-11-27 21:53:57
文档

小程序实现悬浮搜索框

本文实例为大家分享了小程序实现悬浮搜索框的具体代码,供大家参考,具体内容如下:悬浮搜索框是当数据界面不断滚动时,搜索框始终悬浮在最上方。来看一下效果图。UI代码;
推荐度:
导读本文实例为大家分享了小程序实现悬浮搜索框的具体代码,供大家参考,具体内容如下:悬浮搜索框是当数据界面不断滚动时,搜索框始终悬浮在最上方。来看一下效果图。UI代码;


本文实例为大家分享了小程序实现悬浮搜索框的具体代码,供大家参考,具体内容如下

悬浮搜索框是当数据界面不断滚动时,搜索框始终悬浮在最上方。来看一下效果图

UI代码

 <view class="search-wrapper">
 <view class="search-panel">
 <view class="search-section">
 <view class="search-button-wrapper">
 <image class="search-button" src="https://www.gxlcms.com/images/scan.png" bindtap="scan"></image>
 </view>
 <view class="search-input-wrapper ">
 <input bindinput="bindBarcodeInput" bindconfirm="query" bindfocus="bindBarcodeFocus" bindblur="bindBarcodeBlur" class="search-input" placeholder="扫描或者手动输入条码" value="{{barcode}}" confirm-type="search" />
 </view>
 <view class="search-button-wrapper">
 <image class="search-button" src="https://www.gxlcms.com/images/search.png" bindtap="query"></image>
 </view>
 </view>
 </view>
 <view class="search-demo" hidden="{{hiddenDropdown}}">
 <button size="mini" bindtap="setDemoData">示例</button>
 <button size="mini" bindtap="clear" style="margin-left:10px;">清空</button>
 </view>
 </view>

样式

.search-wrapper {
 position: fixed;/*悬停搜索框的关键样式*/
 top: 0px;
 left: 0;
 width: 100%;
 z-index: 999;
}
 
.search-panel {
 background-color: #f50;
}
 
.search-section {
 padding: 5px 0px;
 display: flex;
 flex-direction: row;
}
 
.search-demo {
 padding: 5px;
 flex-direction: row;
 background-color: #eee;
 padding-left:42px; 
 align-items: flex-start;
}
 
.search-input-wrapper {
 flex: 8;
 padding: 5px;
 background-color: #eee;
 border-radius: 3px;
}
 
.search-input {
 padding-top: 5px;
}
 
.search-clear {
 float: right;
 width: 32px;
 height: 32px;
 z-index: 998;
}
 
.search-button-wrapper {
 padding-left: 5px;
 padding-right: 5px;
 padding-top:5px; 
}
 
.search-button {
 flex: 1;
 border: none !important;
 color: white !important;
 width: 32px;
 height: 32px;
}

JS代码

//获取应用实例
var app = getApp()
Page({
 data: {
 barcode: "",
 hiddenLoading: true,
 hiddenData: true,
 hiddenDropdown: true,
 hiddenClear:true,
 demoData: 'XXXX',
 Product: {},
 },
 bindBarcodeInput: function (e) {
 this.setData({
 barcode: e.detail.value
 })
 },
 bindBarcodeFocus: function (e) {
 this.setData({
 hiddenDropdown: false,
 hiddenClear:false
 })
 },
 bindBarcodeBlur: function (e) {
 this.setData({
 hiddenDropdown: true,
 hiddenClear:true
 })
 },
 scan: function (e) {
 var that = this;
 wx.scanCode({
 success: function (res) {
 that.setData({
 barcode: res.result
 });
 that.query(e);
 },
 fail: function () {
 that.setData({
 barcode: "",
 hiddenData: true
 });
 },
 complete: function () {
 // complete
 }
 })
 },
 setDemoData: function (e) {
 this.setData({
 barcode: this.data.demoData
 });
 },
 clear: function (e) {
 this.setData({
 barcode: "",
 hiddenData: true
 });
 },
 query: function (e) {
 var url = "https://www.xxx.com/query";//查询数据的URL
 var that = this;
 if (that.data.barcode == undefined
 || that.data.barcode == null
 || that.data.barcode.length <= 0) {
 that.setData({ hiddenData: true });
 wx.showToast({
 title: '请输入条码',
 image: '/images/fail.png',
 duration: 2000
 });
 return;
 }
 wx.request({
 url: url,
 data: { barcode: that.data.barcode },
 method: 'GET',
 success: function (res) {
 var result = res.data;
 if (result.Status != 0) {
 that.setData({ hiddenData: true });
 wx.showToast({
 title: result.Message,
 image: '/images/fail.png',
 duration: 2000
 })
 return;
 }
 that.setData({ Product: result.Data, hiddenData: false });
 wx.showToast({
 title: "获取数据成功",
 image: '/images/ok.png',
 duration: 2000
 })
 },
 fail: function (e) {
 var toastText = '获取数据失败' + JSON.stringify(e);
 that.setData({
 hiddenLoading: !that.data.hiddenLoading,
 hiddenData: true
 });
 wx.showToast({
 title: toastText,
 icon: '',
 duration: 2000
 })
 },
 complete: function () {
 // complete
 }
 })
 }
})

用到的几个图片

文档

小程序实现悬浮搜索框

本文实例为大家分享了小程序实现悬浮搜索框的具体代码,供大家参考,具体内容如下:悬浮搜索框是当数据界面不断滚动时,搜索框始终悬浮在最上方。来看一下效果图。UI代码;
推荐度:
标签: 小程序 开发 实现
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top