如何使Javascript Tampermonkey脚本搜索相同单词的低位和大写字符

问题描述 投票:0回答:2

我目前有一个基于Tampermonkey的JS用户脚本,如果它们与指定的文本字符串相关联,它会自动点击某些按钮,但是现在它只能感知大写或小写字母,而不能同时感知两者。我希望脚本能够工作,即使单词是否以大写字母开头。

这是我一直在使用的代码:

const findAndClickParent = text => [...document.querySelectorAll('label > span')].forEach(e => e.textContent === "Male" ? e.parentElement.click(): null);

waitForKeyElements (
  "label",
  () => {
    findAndClickParent("Male");
  }
);

因此,此脚本会自动单击其中包含单词“Male”的单选按钮。但是,我希望它也能够单击带有小写“男性”的单选按钮。看起来像一个简单的解决方案,但我还没有找到解决它的语法。任何和所有建议将不胜感激。祝你有美好的一天/晚上!

javascript click userscripts tampermonkey case-insensitive
2个回答
1
投票

在比较之前,将textContent以及通过的text小写:

const findAndClickParent = text => {
  const lowerText = text.toLowerCase();
  [...document.querySelectorAll('label > span')]
    .forEach((e) => {
      if (e.textContent.toLowerCase() === lowerText) {
        e.parentElement.click();
      }
    });
}

waitForKeyElements(
  "label",
  () => {
    findAndClickParent("Male");
  }
);

1
投票

你可以使用RegExp文字或构造函数与i标志集和RegExp.prototype.test()

/male/i.test(e.textContent) 
© www.soinside.com 2019 - 2024. All rights reserved.