我需要选择具有特定 URL 格式的链接。 我可以使用 sizzle 根据正则表达式评估链接的 href 属性吗?
例如,我可以这样做:
var arrayOfLinks = Sizzle('a[HREF=[0-9]+$]');
在其 URL 以数字结尾的页面上创建一个包含所有链接的数组?
试试这个。我试图将 Kobi 链接到的 jQuery 正则表达式选择器转换为 Sizzle 选择器扩展。似乎有效,但我还没有通过很多测试。
Sizzle.selectors.filters.regex = function(elem, i, match){
var matchParams = match[3].split(',', 2);
var attr = matchParams[0];
var pattern = matchParams[1];
var regex = new RegExp(pattern.replace(/^\s+|\s+$/g,''), 'ig');
return regex.test(elem.getAttribute(attr));
};
在这种情况下,您的示例将写为:
var arrayOfLinks = Sizzle('a:regex(href,[0-9]+$)');