如何使用javascript Regex访问DOM元素

时间:2016-08-22 14:25:08

标签: javascript regex dom

我希望通过匹配与页面上存在的dom元素匹配的JavaScript正则表达式来获取页面中存在的所有DOM元素,并返回包含此特定字符串的元素:" tel:"

例如,如果achor标记与<a href="tel:+1222333458">1222333458</a>一起存在,则正则表达式返回DOM元素。 或者跨度可能包含:tel: 我想出了一个简单的正则表达式,匹配字符串&#34; tel:&#34;

/tel:*/g

但它没有做我真正想做的事。

我不仅仅对含有&#34; tel:&#34;的href的锚标签感兴趣。但是任何其他dom元素都可以包含tel:in任何属性或值或html仅使用javascript正则表达式 它应该能够找到像这样的数据属性的所有元素 数据MTYPE =&#39;电话:&#39;

1 个答案:

答案 0 :(得分:0)

更新它以显示包含tel:的任何元素:

console.log(
  Array.prototype.slice.call(document.querySelectorAll('*')).filter(function(element) {
    var match = element.outerHTML.match(/tel:/gi);
    if (match == null) {
      return false;
    }
    if (match == void 0) {
      return false;
    }
    return true;
  })
)
<a href="1234 5678">1</a>
<a href="tel">2</a>
<a href="tel:1234 5678">3</a>
<a href="tel:12345678">4</a>