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

uniapp的webview實現(xiàn)左滑返回上一個頁面操作方法

 更新時間:2023年12月12日 15:36:46   作者:linlinlove2  
uniapp默認左滑是關閉整個webview,而不是關閉當前頁,本文給大家介紹uniapp的webview實現(xiàn)左滑返回上一個頁面操作方法,感興趣的朋友一起看看吧

uniapp默認左滑是關閉整個webview,而不是關閉當前頁 實現(xiàn)思路:攔截webview的url跳轉(zhuǎn)操作,將新url用webview組件重新打開,當左滑的時候,默認關閉的就是當前webview,繼而跳轉(zhuǎn)到上一次的頁面中

<template>
	<view>
		<web-view :src="weburl" :update-title="false" :webview-styles="webviewStyles">
		</web-view>
	</view>
</template>
<script>
	export default {
		data() {
			return {
				// 進度條
				webviewStyles: {
					progress: {
						color: '#FF3333'
					}
				},
				weburl: ""
			};
		},
		onLoad(option) {
			console.log("接收到的url參數(shù)是:", option.weburl); //打印出上個頁面?zhèn)鬟f的參數(shù)。
			this.weburl = option.weburl
		},
		onReady() {
			var pages = getCurrentPages();
			var page = pages[pages.length - 1];
			var currentWebview = page.$getAppWebview();
			var url = currentWebview.children()[0].getURL();
			console.log('=== url ===', url);
			var wv = currentWebview.children()[0];
			wv.overrideUrlLoading({
				mode: 'reject',
				match: '.*'
			}, function(e) {
				console.log('reject url: ' + e.url);
				uni.navigateTo({
					url: `/pages/webbox/webbox?weburl=${e.url}`
				})
			});
		},
		onBackPress(e) {
			let pages = getCurrentPages()
			let page = pages[pages.length - 1];
			let currentPages = page.$getAppWebview()
			currentPages.close()
			return false
		},
		onNavigationBarButtonTap() {
			console.log("點擊了標題欄按鈕")
			uni.$emit("showMenu")
		},
		methods: {}
	}
</script>
<style lang="scss">
</style>

uniapp webview 加載H5,手機返回鍵處理成返回上一頁,上一個網(wǎng)頁

加webview的vue相關處寫如下加紅代碼

<script>
const facebook = uni.requireNativePlugin('sn-facebook');
var wv; //計劃創(chuàng)建的webview
export default {
    data() {
        return {
            canBack: false
        };
    },
    onLoad() {},
    onBackPress() {
        if (wv && this.canBack) {
            wv.back();
            return true;
        }
        return false;
    },
    onReady() {
        // #ifdef APP-PLUS
        var self = this;
        var currentWebview = this.$scope.$getAppWebview(); //此對象相當于html5plus里的plus.webview.currentWebview()。在uni-app里vue頁面直接使用plus.webview.currentWebview()無效,非v3編譯模式使用this.$mp.page.$getAppWebview()
        setTimeout(function() {
            wv = currentWebview.children()[0];
            wv.addEventListener(
                'progressChanged',
                function(e) {
                    wv.canBack(function(e) {
                        self.canBack = e.canBack;
                    });
                },
                false
            );
        }, 500); //如果是頁面初始化調(diào)用時,需要延時一下
        // #endif
    },
    methods: {
        onMessage({ detail }) {
            const data = detail.data[0];
            console.log('onMessage', data);
            if (data.action == 'login') {
                // 登錄:自定義參數(shù)
                facebook.loginWithParams(
                    {
                        permissions: [
                            // 權限,更多權限請看 https://developers.facebook.com/docs/permissions/reference
                            'email',
                            'public_profile'
                        ],
                        // 返回字段,更多字段請查看 https://developers.facebook.com/docs/graph-api/reference/user/
                        fields: 'id, name, email'
                    },
                    e => {
                        console.log(e);
                        this.postMessage({ ...e, action: 'loginCallback' });
                    }
                );
            }
        },
        // postMessage to web
        postMessage(data) {
            if (wv) {
                wv.evalJS('window.postMessage(' + JSON.stringify(data) + ');');
            } else {
                uni.showToast({
                    icon: 'none',
                    title: 'webview不存在'
                });
            }
        }
    }
};
</script>

到此這篇關于uniapp的webview實現(xiàn)左滑返回上一個頁面的文章就介紹到這了,更多相關uniapp webview左滑返回內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • 利用JS提交表單的幾種方法和驗證(必看篇)

    利用JS提交表單的幾種方法和驗證(必看篇)

    下面小編就為大家?guī)硪黄肑S提交表單的幾種方法和驗證(必看篇)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-09-09
  • js控制多圖左右滾動切換效果代碼分享

    js控制多圖左右滾動切換效果代碼分享

    這篇文章主要介紹了js控制多圖左右滾動切換效果,很實用的代碼,推薦給大家,有需要的小伙伴可以參考下。
    2015-08-08
  • 原生JS實現(xiàn)簡單的輪播圖效果

    原生JS實現(xiàn)簡單的輪播圖效果

    這篇文章主要為大家詳細介紹了原生JS實現(xiàn)簡單的輪播圖效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-07-07
  • 簡單通過settimeout看javascript的運行機制

    簡單通過settimeout看javascript的運行機制

    這篇文章主要給大家介紹了關于如何通過settimeout看javascript的運行機制的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用javascript具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-05-05
  • 詳解js根據(jù)百度地圖提供經(jīng)緯度計算兩點距離

    詳解js根據(jù)百度地圖提供經(jīng)緯度計算兩點距離

    這篇文章主要介紹了js根據(jù)百度地圖提供經(jīng)緯度計算兩點距離,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-05-05
  • 使用flutter創(chuàng)建可移動的stack小部件功能

    使用flutter創(chuàng)建可移動的stack小部件功能

    本文主要介紹我為桌面和 Web 設計的一個超級秘密 Flutter 項目使用了畫布和可拖動節(jié)點界面。本教程將展示我如何使用堆棧來使用小部件完成可拖動功能,需要的朋友可以參考下
    2021-10-10
  • Openlayers實現(xiàn)圖形繪制

    Openlayers實現(xiàn)圖形繪制

    這篇文章主要為大家詳細介紹了Openlayers實現(xiàn)圖形繪制,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-09-09
  • 基于Turn.js 實現(xiàn)翻書效果實例解析

    基于Turn.js 實現(xiàn)翻書效果實例解析

    最近項目經(jīng)理我個項目練練手,其項目需求是要實現(xiàn)翻書效果,看到這個需求后,我真是懵了,這咋整,我可是java出身的啊,這個問題真是難住我了,后來有同事的指導,問題順利解決,下面小編把學習心得分享,感興趣的朋友可以參考下
    2016-06-06
  • 微信小程序中wxs文件的一些妙用分享

    微信小程序中wxs文件的一些妙用分享

    wxs相當于一個獨立模塊,相當于一個獨立出來的module對象,通過module.exports向外暴露,在文件中引入即可使用,下面這篇文章主要給大家介紹了關于微信小程序中wxs文件的一些妙用,需要的朋友可以參考下
    2022-01-01
  • 創(chuàng)建js對象和js類的方法匯總

    創(chuàng)建js對象和js類的方法匯總

    這篇文章主要介紹了2種創(chuàng)建js對象和js類的方法,十分的簡單,推薦給大家。
    2014-12-12

最新評論

义乌市| 昂仁县| 聂拉木县| 新乡县| 庆云县| 南充市| 萨嘎县| 邵阳市| 鹿邑县| 抚松县| 台湾省| 都匀市| 黎川县| 车险| 璧山县| 章丘市| 广灵县| 普安县| 大余县| 井陉县| 巴东县| 额尔古纳市| 柳江县| 无棣县| 琼海市| 冀州市| 赤水市| 二手房| 济宁市| 房产| 清镇市| 怀安县| 金乡县| 会东县| 阜平县| 江都市| 临武县| 香格里拉县| 衢州市| 莒南县| 项城市|