仅在正则表达式匹配时应用bootstrap popover

时间:2013-04-26 16:19:47

标签: javascript jquery regex twitter-bootstrap popover

我想应用此popover

$('.body').popover({
  html: true,
  trigger: 'hover',
  placement: 'top',
  container: 'body',
  content: function () {
    return '<img src="'+$(this).attr('href') + '" />';
  }
});

仅在/(jpg|gif|png)$/.test($(this).attr('href'))

我不知道该怎么做..因为我之前无法做到这一点,如果我已经进入了弹出窗口,那就太晚了

2 个答案:

答案 0 :(得分:2)

您可以使用类body迭代所有项目,并在符合特定条件的情况下添加新类(例如imgbody),而不是在弹出框中执行此操作。然后,您只为该类创建弹出窗口。

所以:

$('.body').each(function(index, elem) {
  if (/(jpg|gif|png)$/.test($(elem).attr('href')))
     $(elem).addClass("imgbody");
});
$(".imgbody").popover({ ...

答案 1 :(得分:0)

我最终使用过滤器来过滤它

$('.body').filter(function() {
  return /(jpg|gif|png)$/.test($(this).attr('href'))
}).popover({ html: true,
            trigger: 'hover',
            placement: 'top',
            container: 'body',
            content: function () {
                return '<img src="'+$(this).attr('href') + '" />';
             }
            });