Javascript Tampermonkey没有显示语法检查错误,但脚本仍然没有';我什么也不做?

Javascript Tampermonkey没有显示语法检查错误,但脚本仍然没有';我什么也不做?,javascript,syntax,href,tampermonkey,getelementsbyclassname,Javascript,Syntax,Href,Tampermonkey,Getelementsbyclassname,多亏了这个论坛上几个人的帮助,我才得以写下我的剧本,所以我要为此感谢所有人 我得到了一个用Tampermonkey编写的脚本,它通过了语法检查,没有任何问题,但似乎没有在所讨论的网页上完成它的工作 脚本必须(在新窗口中)打开网页上项目的链接。我有一个需要打开的项目列表,下面是这些项目的一个示例: <a class="market_listings" href="http://blabla.com/item1">...</a> <a class="market_lis

多亏了这个论坛上几个人的帮助,我才得以写下我的剧本,所以我要为此感谢所有人

我得到了一个用Tampermonkey编写的脚本,它通过了语法检查,没有任何问题,但似乎没有在所讨论的网页上完成它的工作

脚本必须(在新窗口中)打开网页上项目的链接。我有一个需要打开的项目列表,下面是这些项目的一个示例:

<a class="market_listings" href="http://blabla.com/item1">...</a>
<a class="market_listings" href="http://blabla.com/item2">...</a>
<a class="market_listings" href="http://blabla.com/item3">...</a>
  etc.
如您所见,该项由类和href定义。类不是唯一的,但href是唯一的

因此,我们的想法是:

  • 该脚本使用class=“market\u listings”获取元素,只是为了缩小页面上对HREF的搜索范围

  • 脚本将查看这些元素的href是否与“*”对应

  • 脚本将使用该href打开一个新窗口

  • 在本例中,我希望在新窗口中显示“item1”的href:

        // ==UserScript==
        // @name         supdawg
        // @version      1.0
        // @description  *This script is supposed to look for a specific href on a page and then open a new window with that href, in this case only item1.*
        // @match        http://blabla.com/*
        // @copyright    2012+, Bram
        // ==/UserScript==
    
    
    function OpenSpecificHref() {
    
        //Gets reference to the elements
        var elem = document.getElementsByClassName("market_listings"), 
            i = 0;
    
        while (i < elem.length) //Loop through the elements
    
            {
               //Verify's that the href starts with http://blabla.com/item1
              if (elem[i].href.indexOf("http://blabla.com/item1") === 0)
    
                {
                  //If it does, open that URL in a new window.
                  window.open(elem[i].href, "_blank");
                }
             i++;
            }
    }
    
    OpenSpecificHref();
    
    /==UserScript==
    //@name supdawg
    //@version 1.0
    //@description*此脚本应在页面上查找特定的href,然后使用该href打开一个新窗口,在本例中仅显示item1*
    //@匹配http://blabla.com/*
    //@copyright 2012+,Bram
    //==/UserScript==
    函数OpenSpecificHref(){
    //获取对元素的引用
    var elem=document.getElementsByClassName(“市场清单”),
    i=0;
    while(i
    这个脚本对我来说似乎很干净,但它在相关网站上没有任何作用。Tampermonkey显示脚本正在运行,但什么也没发生。我尝试关闭所有其他扩展(包括AdBlock和其他东西),但这并没有解决问题

    我希望你们能告诉我这个剧本有什么问题

    非常感谢你们为我所做的一切


    Bram

    您正在定义一个函数。但你不叫它。所以它完全按照你告诉它的去做:定义一个函数,什么都不做。我对编程完全陌生,所以我认为只要定义它也可以运行它。编辑:我在最后调用了这个函数,但它仍然不起作用。不过谢谢你的帮助。不知道Tampermonkey是如何处理的,但是你需要确保在文档完全加载之前没有调用该函数。否则,HTML元素还不存在。我只是查了一下:包括
    @run-at-document end
    应该可以。如果没有,学习如何使用事件处理程序。