按名称和颜色选择项目

Choose item by name and color

我希望我的机器人通过名称和颜色从这个网站 https://www.supremenewyork.com/shop/all/t-shirts 中选择一个项目,但我只能在它通过名称或颜色选择时才能使它工作,而不是同时选择两者。它的代码看起来像这样

function pickItem() {
    chrome.storage.sync.get("itemName", function(data) {
        let items = document.getElementsByClassName("name-link");

        for(i = 0; i < items.length; i++) {
            if ((items[i].innerHTML).includes(data.itemName)) {
                chrome.runtime.sendMessage({redirect: items[i].href});
                break;
            }
        }
    })
}

此代码应该同时选择名称和颜色,但不起作用。如果有任何提示,我将不胜感激。

function pickItem() {
    let items = document.getElementsByClassName("name-link");

    chrome.storage.sync.get(["itemName", "color"], function(data) {

        for(i = 0; i < items.length; i++) {
            if ((items[i].innerHTML).includes(data.itemName)) {
                var name_item_found = items[i];

                for(j= 0; j < name_item_found.length; j++) {
                    if((name_item_found[j].innerHTML).includes(data.color)) {
                        
                        chrome.runtime.sendMessage({redirect: name_item_found[j].href});
                        break;
                    }
                }
            } 
        }
    })
}

我找到了解决方案,如果以后有人遇到同样的问题,我会在这里发布。

function pickItem() {
    let items = document.getElementsByClassName("name-link");

    chrome.storage.sync.get(["itemName", "color"], function(data) {
        for(i = 0; i < items.length; i++) {
            if(items[i].innerHTML == data.itemName) {
                for(j = 0; j < items.length; j++) {
                    if(items[j].innerHTML == data.color) {
                            if(items[i].href == items[j].href) {
                                chrome.runtime.sendMessage({redirect: items[i, j].href})
                            }
                    }
                }
            }
        }
    })
}