日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > vue >内容正文

vue

vue解决打开新窗口被拦截的的实战方法

發布時間:2024/1/8 vue 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 vue解决打开新窗口被拦截的的实战方法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

解決方案:

1. 使用a標簽替代

給出如下函數,將此函數綁定到click的事件回調中,就可以避免大部分瀏覽器對窗口彈出的攔截。

newLink(url) {let a = document.createElement(‘a‘);a.setAttribute(‘href‘, url);a.setAttribute(‘target‘, ‘_blank‘);}

2. 使用form的submit方法打開一個頁面

這種方法需要構造一個from,然后由js代碼觸發form的submit,將表單提交到一個新的頁面,

如果需要傳遞參數時,需要使用 POST 方法, 默認的 GET 方法無法傳遞參數。也就是新頁面的url中沒有參數部分。如:

newLink(url){let form = document.createElement('form');form.action = 'www.baidu.com?id=1';form.target = '_blank';form.method = 'POST';document.body.appendChild(form);form.submit(); }

3、終極解決方案–先彈出窗口,然后重定向

第三種方案,其實是一種變通方案,核心思想是:先通過用戶點擊打開頁面,然后再對頁面進行重定向。示例代碼如下:

newLink(url){// 打開頁面,此處最好使用提示頁面let newLink = window.open(‘loading page‘);axios.get(url).then(function (response) {newLink.location.href = url;;}).catch(function (error) {console.log(error);}) }

參考鏈接1

參考鏈接2

總結

以上是生活随笔為你收集整理的vue解决打开新窗口被拦截的的实战方法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。