从Ebay搜索中删除未指定运费的商家

时间:2016-05-01 10:38:39

标签: javascript greasemonkey tampermonkey

我试着写一个关于在Ebay上删除搜索结果的例子,这个脚本说“未指定运输”#39;下面的代码只删除了其中的一部分,有时甚至删除了指定运费或者仅适用于1个项目的代码。我甚至都不知道了。有什么问题?

    // ==UserScript==
// @name         New Userscript
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  try to take over the world!
// @author       You
// @match        http://*/*
// @grant        none
// ==/UserScript==

(function() {
    'use strict';

    var li = document.getElementsByClassName('lvshipping');

    for(var i=0;i < li.length;i++)
    {
        if(li[i].innerHTML.indexOf("Shipping not specified") != -1)
        {
            console.log("Found!!!!!!!!!!!!!!!");
            li[i].parentNode.parentNode.parentNode.removeChild(li[i].parentNode.parentNode);
        }
    }
})();

保持简单。

1 个答案:

答案 0 :(得分:0)

尝试向后循环:

for (var i = li.length; i-->0 ;)

我认为document.getElementsByClassName会返回一个动态NodeList。因此,当您从文档中删除当前<li>时,它也会从列表中删除,将下一个<li>转移到i位置。然后,迭代器的i++将跳过该元素而不进行处理。