2016-10-28 142 views
0

我想向頁面添加一個按鈕,點擊該按鈕後,應在同一瀏覽器窗口的新選項卡上打開鏈接。我嘗試了Stack Overflow上可用的代碼之一,但這並不符合我的目的。我能夠將按鈕放在頁面上,並根據需要重新命名。然而,只有當我點擊那個按鈕時纔打開的東西,我需要一個新的選項卡,用我指定的鏈接打開。請分享您的意見。點擊按鈕在新選項卡上打開鏈接

代碼是此鏈路上的第二一個:[使用JavaScript中打開新的標籤頁的URL(而不是一個新的窗口)](HTTP Add a JavaScript button using Greasemonkey or Tampermonkey?

(function(){ 
'use strict' 

    window.addEventListener('load',() => { 
    addButton('Create Case', selectReadFn) 
    }) 

function addButton(text, onclick, cssObj) { 
    cssObj = cssObj || {position: 'absolute', bottom: '4.2%', left:'24.3%', 'z-index': 3} 
    let button = document.createElement('button'), btnStyle = button.style 
    document.body.appendChild(button) 
    button.innerHTML = text 
    button.onclick = onclick 
    Object.keys(cssObj).forEach(key => btnStyle[key] = cssObj[key]) 
    return button 
} 

function selectReadFn() {      
[...document.getElementsByClassName('MN')].filter(isRead).forEach(element =>  element.click()) 
} 

function isRead(element) { 
    childs = element.parentElement.parentElement.parentElement.getElementsByClassName('G3') 
    return ![...childs].some(e => e.innerText.search(/unread/i)!==-1) 
} 

}()) 
+4

的可能的複製://計算器.com/questions/4907843/open-a-url-in-a-new-tab-and-not-a-new-window-javascript-javascript) – Roberrrt

+0

你好Roberrrt, 這似乎沒有幫助我。如果你知道的話,你可以分享一下代碼嗎? –

回答

0
function openInNewTab(pageUrl) { 
var win = window.open(pageUrl, '_blank'); 
win.focus(); 
} 
+0

您是否介意在代碼中添加該代碼並將其作爲完整代碼共享?對此我有點外行。對此,真的會感激你。 –

+0

雖然此代碼片段可能會解決問題,但[包括解釋](http://meta.stackexchange.com/questions/114762/explaining-entirely-code-based-answers)確實有助於提高帖子的質量。請記住,您將來會爲讀者回答問題,而這些人可能不知道您的代碼建議的原因。 – andreas

相關問題