3
我有這樣的片段:鉻:window.open打開新標籤而不是新的彈出窗口
HTML
<a href="#" class="option-link" data-url="https://www.google.com">CLICK ME</a>
JS
var popup = undefined;
// Option links toggle
$('.option-link').on('click', function (e) {
e.preventDefault();
var url = $(this).data('url');
if (typeof url !== 'undefined' && url) {
function __popup_open(link) {
return window.open(
link,
'same_window',
'width = 940, height = 620, toolbar = 0, menubar = 0, location = 1, status = 1, scrollbars = 0, resizable = 0, left = 0, top = 0'
);
}
if (typeof popup == 'undefined' || popup.closed) {
popup = __popup_open(url);
} else {
popup.close();
popup = __popup_open(url);
}
popup.focus();
}
});
運行在老的腳本v58版本(58.0.3029.110)向後版本的chrome會給出正確的行爲來打開一個新的彈出窗口。
但是,當我將瀏覽器更新到v59(59.0.3071.104)後,它不打開彈出窗口,而是打開一個新的瀏覽器選項卡。
這是瀏覽器本身的問題嗎?或者我的代碼中的某些內容使得它不能工作,前提是這裏唯一的變化是瀏覽器版本。
PS 試試這個片段mozilla工作正常。
在推薦它之前,您是否嘗試過?因爲它在Chrome 63中不起作用。 – chb