javascript - 按标签/类名长度选择元素

标签 javascript jquery

我想在 Tampermonkey. 中使用 javascript/jquery 选择一个元素

每次加载页面时,元素的类名和标签都会发生变化。 所以我不得不使用某种形式的正则表达式,但不知道该怎么做。

这是 html 的样子:

<ivodo class="ivodo" ... </ivodo>
<ivodo class="ivodo" ... </ivodo>
<ivodo class="ivodo" ... </ivodo>
  • 标签始终与类名相同。
  • 它总是一个 4/5 字母的随机“代码”

我猜它会是这样的: $('[/^[a-z]{4,5}/}')

谁能帮我得到正确的正则表达式?

最佳答案

您不能在选择器中使用正则表达式。您可以选择一些容器并选择它的所有元素,然后根据它们的类名过滤它们。不过,这可能不会很快。

我为你做了一个演示: https://codepen.io/anon/pen/RZXdrL?editors=1010

html:

<div class="container">
  <abc class="abc">abc</abc>
  <abdef class="abdef">abdef</abdef>
  <hdusf class="hdusf">hdusf</hdusf>
  <ueff class="ueff">ueff</ueff>
  <asdas class="asdas">asdas</asdas>
  <asfg class="asfg">asfg</asfg>
  <aasdasdbc class="aasdasdbc">aasdasdbc</aasdasdbc>
</div>

js(使用 jQuery):

const $elements = $('.container *').filter((index, element) => {
  return (element.className.length === 5);
});

$elements.css('color', 'red');

关于javascript - 按标签/类名长度选择元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46145415/

相关文章:

javascript - 禁用焦点 - jQuery

javascript - Jquery Mobile Listview 自动完成 : how to trigger function when user presses enter?

javascript - 使用 jQuery 使一个 div 飞入另一个 div

javascript - 引用 JavaScript 变量

javascript - 按钮值未显示 -javascript

javascript - 组合对象数组

jquery - 捕获 Change( ) 的先前值以便将输入字段恢复为该值?

javascript - 可调整大小的 <a> 元素

javascript - Drupal 上的 jCarousel

javascript - 表单多次提交