第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

js操作新開頁面會被攔截,如何解決?

js操作新開頁面會被攔截,如何解決?

胡說叔叔 2018-11-20 17:13:35
頁面上一個按鈕,有個onclick事件,點擊觸發(fā)js,發(fā)送ajax請求到后臺,后臺經(jīng)過一系列判斷,返回url到j(luò)s<a class="a" id="k_id" href="javascript:void(0);" onclick="test($(this),id1,id2);"></a>function test(oElement,id1,id2) {    //發(fā)送ajax請求...返回一個url    var url = "ajax請求返回的url";        //js操作將返回的url賦值到頁面上的a標(biāo)簽,然后js模擬a標(biāo)簽點擊事件    $(oElement).attr("href",url);    $(oElement).removeAttr("onclick");    var id = $(oElement).attr("id");    document.getElementById(id).click();//這里點擊a標(biāo)簽        //這樣的操作會被瀏覽器攔截,}求解$(oElement).attr("href",url);$(oElement).removeAttr("onclick");經(jīng)測試,假如js操作新開頁面的動作沒有放在ajax的回調(diào)中的話這樣就不需要js去模擬點擊,jquery操作修改了href屬性后直接就能夠跳轉(zhuǎn)
查看完整描述

1 回答

?
慕斯王

TA貢獻(xiàn)1864條經(jīng)驗 獲得超2個贊

瀏覽器會判斷新開標(biāo)簽是否是用戶自身行為(特別是safari) 你的url如果是后臺返回 瞬間返回是可以打開的 如果延遲個幾百毫秒就會被攔截,以下是我自己的解決辦法:

winRef = window.open("", "_blank");


winRef.location = response.url;

點擊函數(shù)后立即打開新標(biāo)簽,然后再發(fā)送請求,后臺發(fā)揮的url地址賦值給你新開標(biāo)簽的對象的location 就可以了
新開標(biāo)簽的兼容基本就是這個思路

查看完整回答
反對 回復(fù) 2018-12-28
  • 1 回答
  • 0 關(guān)注
  • 538 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號