我是新来的。我试图运行我的脚本来打开一个新页面。但结果是,它只打开一个新的空白页面。有人可以帮我解决这个问题吗?
<form method="get" action="/specials/test-page-only">
<button class="btn btn-label btn-block btn-lg btn-primary">
<label><i class="fa fa-angle-right fa-2x"></i>
</label>Reshare This Special</button>
</form>
我使用脚本;
var myNodelist = document.querySelectorAll(".btn.btn-label.btn-block.btn-lg.btn-primary");
var TotalNewLink = 0;
var TotalOldLink = 0;
for (i = 0; i < myNodelist.length; i++)
{
if (myNodelist[i].innerHTML.indexOf("Reshare This Special") != -1)
{
TotalOldLink += 1;
}
}
chrome.runtime.sendMessage({
type: 'TotalOldLink',
text: TotalOldLink
});
for (i = 0; i < myNodelist.length; i++) {
if (myNodelist[i].innerHTML.indexOf("Reshare This Special") != -1) {
window.open(myNodelist[i].href, '_blank');
}
}
答案 0 :(得分:0)
您正尝试访问href
元素上的<button>
属性:
window.open(
myNodelist[i].href, // <-- this returns undefined
'_blank'
);
但该按钮没有href属性,因此您将获得一个空白URL。
答案 1 :(得分:0)
使用window.location.href = url
代替window.open(myNodelist[i].href, '_blank');
但如果您不打算使用我告诉的方法,请尝试查看myNodelist上是否有href属性