vue項目中需要嵌套第三方的頁面,但是第三方頁面中的網頁沒有返回按鈕,如圖所示:此爲頁面b,頁面a爲跳到b頁面的前一個頁面。
點擊iframe嵌套頁面跳轉的第二個頁面
要實現不管進入多少層iframe頁面,點擊回退都直接跳到頁面a.
實現:
爲了不影響路由判斷,使用回退的方法。
首先在進入頁面b時,記錄一下history.length,並把這個值賦給頁面的一個變量:
data () {
return {
para:{},
htmlStr:'',
htmlSrc:'',
rlen:history.length,
}
},
mounted () {
},
methods: {
//返回
goBack () {
let len = this.rlen - history.length - 1;//-1是不進入iframe頁面的下級頁面直接退出的話,執行後退一步的操作
this.$router.go(len);
},
}
在點擊返回按鈕時,重新獲取一下history.length,並用剛進入b頁面記錄的值去減去最新的history.length,即可獲取到需要回退的步數。
注:history.length:瀏覽器歷史列表中的元素數量