簡體   English   中英

如何在vueJs中不點擊按鈕的情況下在新標簽頁中打開頁面

[英]How to open page in new Tab without button click in vueJs

我想在 Axios 響應成功后在新選項卡中打開頁面鏈接,我已經搜索了有關它的解決方案,但瀏覽器一直阻止彈出窗口。 我已經嘗試了下面的一個,但沒有得到工作,並且在所有瀏覽器中都不支持

let newTab = window.open(); newTab.location.href = url;

_blank可以幫助您打開新窗口。 查看 w3school 上 window.open 函數的文檔。 https://www.w3schools.com/jsref/met_win_open.asp

但出於安全原因,瀏覽器會阻止此類彈出窗口。 從用戶安全的角度來看,這是默認和期望的行為。 您可以使用以下解決方案覆蓋此設置。 https://blog.getadblock.com/how-to-disable-pop-up-blockers-in-every-browser-a1cccbae53e7

您可以使用_blank值將其指定為第二個參數:

let newTab = window.open(url,'_blank');

@Dhruti 如果所有其他方法都失敗了,您仍然可以單擊按鈕觸發新選項卡,只需隱藏按鈕並使用 JavaScript 觸發單擊操作。 在 Vue 中給按鈕一個 id 或 ref="somename",以及一個類。 設置它的opacity: 0; 並將其放置在頁面上不被注意的某個位置。 你甚至可以設置position: relative; (或絕對/固定)並給它一個z-index: 0; 或 -1,然后在您的 axios 響應之后,調用this.$refs.hiddenButton.click()確保您已在按鈕上設置target="_blank"

*小費,
每次單擊該元素時, target="_blank"將打開一個新選項卡。
target="blank" (無下划線)將在第一次打開一個新選項卡,然后在每次后續點擊時重復使用該選項卡。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM