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:浏覽器曆史清單中的元素數量