最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

微信小程序自定義頂部導(dǎo)航組件

 更新時間:2022年07月07日 17:27:55   作者:In?Heaven  
這篇文章主要為大家詳細介紹了微信小程序自定義頂部導(dǎo)航組件,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了微信小程序自定義頂部導(dǎo)航組件,供大家參考,具體內(nèi)容如下

在components中新建文件夾navbar

components/navbar.wxml

<!--components/navbar.wxml-->
<view class="navbar" style="height:{{navHeight+5}}px;background-image:url('{{imgUrl}}') ">
? <!-- 左上角 返回按鈕 和 home按鈕 wx:if="{{showNav}}" 是控制左上角按鈕的顯示隱藏,首頁不顯示 -->
? <view class="navbar_left" style="top:{{navTop}}px;height:{{jnheight-1}}px;width:{{jnwidth-3}}px" wx:if="{{showNav}}">
? ? <!-- 控制返回按鈕的顯示 -->
? ? <view class="navBack" bindtap="navBack">
? ? ? <image src="/images/back.png" mode="widthFix"></image>
? ? </view>
? ? <!-- home按鈕 wx:if="{{showHome}}" 是控制左上角 home按鈕的顯示隱藏-->
? ? <view class="nav_line" bindtap="navHome" wx:if="{{showHome}}">
? ? ? <image src="/images/index.png" mode="widthFix" style="width:50%"></image>
? ? </view>
? </view>
? <!-- 中間標題 -->
? <view class="navbar_title" style="top:{{navTop}}px;">{{pageName}}</view>
</view>

components/navbar.js

const App = getApp();
Component({
? // 組件的屬性列表
? properties: {
? ? pageName: String, //中間的title
? ? showNav: { //判斷是否顯示左上角的按鈕 ? ?
? ? ? type: Boolean,
? ? ? value: true
? ? },
? ? showHome: { //判斷是否顯示左上角的home按鈕
? ? ? type: Boolean,
? ? ? value: true
? ? },
? ? imgUrl:{//圖片背景路徑
? ? ? type: String,
? ? ? value: App.globalData.imgLink+'index.jpg',
? ? },
? },
? // 組件的初始數(shù)據(jù)
? data: {
? ? showNav: true, //判斷是否顯示左上角的home按鈕
? ? showHome: true, //判斷是否顯示左上角的按鈕

? },
? lifetimes: {
? ? // 生命周期函數(shù),可以為函數(shù),或一個在methods段中定義的方法名
? ? attached: function() {
? ? ? this.setData({
? ? ? ? navHeight: App.globalData.navHeight, //導(dǎo)航欄高度
? ? ? ? navTop: App.globalData.navTop, //膠囊按鈕與頂部的距離
? ? ? ? jnheight: App.globalData.jnheight, //膠囊高度
? ? ? ? jnwidth: App.globalData.jnwidth //膠囊寬度
? ? ? })
? ? }
? },
? // 組件的方法列表
? methods: {
? ? //回退
? ? navBack: function() {
? ? ? wx.navigateBack()
? ? },
? ? //回主頁
? ? navHome: function() {
? ? ? wx.switchTab({
? ? ? ? url: '/pages/index/index'
? ? ? })
? ? },
? }
})

components/navbar.wxss

/* components/navbar.wxss */
.navbar {
? width: 100%;
? overflow: hidden;
? position: sticky;
? top: 0;
? left: 0;
? z-index: 10;
? flex-shrink: 0;
? background: #fff;
?
}

.navbar_left {
? display: -webkit-flex;
? display: flex;
? -webkit-box-align: center;
? -ms-flex-align: center;
? -webkit-align-items: center;
? align-items: center;
? position: absolute;
? left: 10px;
? z-index: 11;
? line-height: 1;
? border: 1rpx solid #f0f0f0;
? border-radius: 40rpx;
? overflow: hidden;
? background: rgba(255, 255, 255, 0.6);
}
.navBack image{
? width: 60%;
}
?
.navbar_left view {
? width: 50%;
? display: flex;
? align-items: center;
? justify-content: center;
}
?
.nav_line {
? border-left: 1rpx solid #f0f0f0;
}
?
.navbar_title {
? width: 100%;
? box-sizing: border-box;
? padding-left: 115px;
? padding-right: 115px;
? height: 32px;
? line-height: 32px;
? text-align: center;
? position: absolute;
? left: 0;
? z-index: 10;
? color: #333;
? font-size: 16px;
? font-weight: bold;
? text-overflow: ellipsis;
? overflow: hidden;
? white-space: nowrap;
}

在公共組件app.js中獲取導(dǎo)航高度等信息

// app.js
App({
? onLaunch() {
? ? //設(shè)置導(dǎo)航欄
? ? //獲取菜單按鈕的布局位置信息
? ? let menuButtonObject = wx.getMenuButtonBoundingClientRect();
? ? //獲取系統(tǒng)信息
? ? wx.getSystemInfo({
? ? ? success: res => {
? ? ? ? console.log('xxxx', res)
? ? ? ? //狀態(tài)欄的高度
? ? ? ? let statusBarHeight = res.statusBarHeight,
? ? ? ? ? //膠囊按鈕與頂部的距離
? ? ? ? ? navTop = menuButtonObject.top,
? ? ? ? ? navHeight = statusBarHeight + menuButtonObject.height + (menuButtonObject.top - statusBarHeight) * 2;
? ? ? ? let globalData = this.globalData;
? ? ? ? globalData.navHeight = navHeight;//導(dǎo)航欄高度
? ? ? ? globalData.navTop = navTop;//膠囊按鈕與頂部的距離
? ? ? ? globalData.jnheight = menuButtonObject.height;//膠囊的高度
? ? ? ? globalData.jnwidth = menuButtonObject.width;//膠囊的寬度
? ? ? ? globalData.screenHeight = res.screenHeight;//屏幕高度
? ? ? },
? ? ? fail(err) {
? ? ? ? console.log(err);
? ? ? }
? ? });

? },
? //設(shè)置全局對象
? globalData: {
? ? navHeight: 0,
? ? navTop: 0,
? ? jnheight: 0,
? ? jnwidth: 0,
? ? screenHeight: 0,
? }
})

在app.json中設(shè)置導(dǎo)航自定義,去除默認的導(dǎo)航 “navigationStyle”: "custom"

?"window": {
? ? "backgroundTextStyle": "light",
? ? "navigationBarBackgroundColor": "#fff",
? ? "navigationBarTitleText": "Weixin",
? ? "navigationBarTextStyle": "black",
? ? "navigationStyle": "custom"
? },

引用到pages中的文件里

json文件中引用組件****

{
? "usingComponents":{
? ? "navbar":"/components/navbar/navbar"
? }
}

html文件中

<navbar page-name="{{navbar.shoppingName}}"></navbar>

js文件中

Page({
? data:{
? ? navbar:{
? ? ? shoppingName:'首頁',
? ? },
? }

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • JS實現(xiàn)websocket長輪詢實時消息提示的效果

    JS實現(xiàn)websocket長輪詢實時消息提示的效果

    這篇文章主要介紹了JS實現(xiàn)websocket長輪詢實時消息提示的效果的相關(guān)資料,需要的朋友可以參考下
    2017-10-10
  • JavaScript實現(xiàn)滑塊驗證碼

    JavaScript實現(xiàn)滑塊驗證碼

    這篇文章主要為大家詳細介紹了JavaScript實現(xiàn)滑塊驗證碼,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • javascript實現(xiàn)文字圖片上下滾動的具體實例

    javascript實現(xiàn)文字圖片上下滾動的具體實例

    這篇文章介紹了在JS中文字圖片上下滾動的實現(xiàn)代碼,需要的朋友可以參考一下
    2013-06-06
  • 原生JavaScript制作計算器

    原生JavaScript制作計算器

    本文給大家匯總了2個原生JavaScript實現(xiàn)的計算器功能的代碼,一個簡單一個稍微復(fù)雜些,小伙伴們根據(jù)自己的需要來選擇吧
    2016-10-10
  • uniapp movable-area應(yīng)用

    uniapp movable-area應(yīng)用

    這篇文章主要為大家介紹了uniapp movable-area應(yīng)用示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-08-08
  • JavaScript數(shù)組類型Array相關(guān)的屬性與方法詳解

    JavaScript數(shù)組類型Array相關(guān)的屬性與方法詳解

    這篇文章主要給大家介紹了關(guān)于JavaScript數(shù)組類型Array相關(guān)的屬性與方法的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • bootstrap IE8 兼容性處理

    bootstrap IE8 兼容性處理

    這篇文章主要為大家詳細介紹了bootstrap IE8 兼容性處理,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-03-03
  • 基于原生JS實現(xiàn)圖片裁剪

    基于原生JS實現(xiàn)圖片裁剪

    要進行圖片編輯,最重要要能夠?qū)D片進行裁剪。主要的實現(xiàn)分成兩部分,一部分是前端利用js進行裁剪區(qū)域選擇,第二部分是利用PHP進行后臺處理?,F(xiàn)在就跟大家分享一下。
    2016-08-08
  • 詳解webpack引用jquery(第三方模塊)的三種辦法

    詳解webpack引用jquery(第三方模塊)的三種辦法

    這篇文章主要介紹了詳解webpack引用jquery(第三方模塊)的三種辦法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-08-08

最新評論

武邑县| 清水县| 西贡区| 荃湾区| 忻州市| 新营市| 虞城县| 清镇市| 奉化市| 咸丰县| 墨江| 林周县| 陕西省| 呼和浩特市| 宽甸| 多伦县| 德惠市| 中西区| 嘉善县| 阿拉善左旗| 嘉祥县| 加查县| 罗平县| 裕民县| 青海省| 油尖旺区| 富平县| 融水| 定州市| 武邑县| 华亭县| 巴楚县| 黑水县| 常熟市| 滨海县| 嘉义县| 临武县| 云林县| 宣城市| 开平市| 屏东县|