【问题标题】:Opening webpage in javascript on trigger触发时在javascript中打开网页
【发布时间】:2015-04-19 11:10:58
【问题描述】:

我正在使用一个名为“HIT Scraper WITH EXPORT”的脚本来帮助我完成工作。现在它的设置方式是,只要有新帖子,页面就会播放声音/叮当声。通常,发生这种情况时,我必须切换选项卡并手动单击新列表进行预览。我正在尝试让它在叮当之前/之后自动打开列表。如果我在另一个选项卡中,如果可能的话,也可以将焦点放在该选项卡上。这有可能吗,我应该从哪里开始?我将发布代码和我注意到的一些感兴趣的领域,我只是不知道如何处理这些领域..提前谢谢你。

我认为找到新命中时运行的函数:

function newHits(dingNoise) {
    //console.log(dingNoise);
    if (dingNoise || newHitDing)
        document.getElementById("ding_noise"+audio_index).play();
}

我认为“preview_link”是我需要在叮声播放后自动打开的var。

var preview_link = "/mturk/preview?groupId=" + group_ID;

所以我的逻辑是这样的:

function newHits(dingNoise) {
    //console.log(dingNoise);
    if (dingNoise || newHitDing)
        document.getElementById("ding_noise"+audio_index).play();
    window.open("/mturk/preview?groupId=") + group_ID;

}

哪个不起作用..如果有人有任何想法,这是完整的脚本..再次感谢。

https://greasyfork.org/en/scripts/2002-hit-scraper-with-export/code

编辑:我不认为我最初想要这样做的方式会起作用,代码中的任何内容都不知道/指向实际的新列表。代码中定义的只是预览链接功能。如果有某种方法可以让它调用/打开“var preview_link =”/mturk/preview?groupId=" + group_ID;"叮当之后,这可能就是我需要的。

for (var j = 0; j < $requester.length; j++)
{
    var $hits = $requester.eq(j).parent().parent().parent().parent().parent().parent().find('td[class="capsule_field_text"]');
    var requester_name = $requester.eq(j).text().trim();
    var requester_link = $requester.eq(j).attr('href');
    var group_ID=(listy[j] ? listy[j] : "");
    group_ID=group_ID.replace("/mturk/notqualified?hit","");
    var masters = false;
    var title = $title.eq(j).text().trim();
    var preview_link = "/mturk/preview?groupId=" + group_ID;
    //console.log(listy[j]);
    //console.log(title+" "+group_ID +" "+ listy[j]);
    if (!group_ID || group_ID.length == 0){
        preview_link = requester_link;
        title += " (Requester link substituted)";
    }
    var reward = $reward.eq(j).text().trim();
    var hits = $hits.eq(4).text().trim();
    var time = $times.eq(j).parent()[0].nextSibling.nextSibling.innerHTML;
    var description = $descriptions.eq(j).parent()[0].nextSibling.nextSibling.innerHTML;
    //console.log(description);
    var requester_id = requester_link.replace('/mturk/searchbar?selectedSearchType=hitgroups&requesterId=','');
    var accept_link;
    accept_link = preview_link.replace('preview','previewandaccept');

【问题讨论】:

  • 你不能告诉浏览器聚焦一个新标签。想一想……如果每个人都这样做,您作为用户将完全失去对浏览器的控制

标签: javascript mechanicalturk


【解决方案1】:

我想你想做:

window.location.replace(window.location.host + '/mturk/preview?groupId='+ group_ID)

我实际上不确定您是否需要 window.location.host + 部分。

【讨论】:

  • 试过了,并没有改变任何东西,只是把屏幕弄坏了。
猜你喜欢
  • 2016-02-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多