【问题标题】:Open link on a new tab on click of button单击按钮在新选项卡上打开链接
【发布时间】:2016-10-28 08:44:16
【问题描述】:

我想向页面添加一个按钮,单击该按钮应在同一浏览器窗口的新选项卡上打开一个链接。我已经尝试了 Stack Overflow 上可用的代码之一,但这并没有达到我的目的。我能够在页面上放置按钮并根据需要重命名。但是,我期待的唯一打开的事情是单击该按钮后,我需要使用我指定的链接打开一个新选项卡。请分享您的意见。

代码是此链接上的第二个: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)
}

}())

【问题讨论】:

标签: javascript html css


【解决方案1】:
function openInNewTab(pageUrl) {
var win = window.open(pageUrl, '_blank');
win.focus();
}

【讨论】:

  • 您介意在代码上添加它并在此处作为完整的共享吗?我对此有点外行。非常感谢你。
  • 虽然这段代码 sn-p 可以解决问题,但including an explanation 确实有助于提高帖子的质量。请记住,您是在为将来的读者回答问题,而这些人可能不知道您提出代码建议的原因。
猜你喜欢
  • 2022-07-30
  • 1970-01-01
  • 2016-03-11
  • 2019-09-20
  • 1970-01-01
  • 1970-01-01
  • 2013-02-20
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多