0

我正在使用一项名为Embedly的服务来设置来自 Google Feedburner 的 RSS 提要的样式。我有一个关于她的示例代码:JsFiddle

如果您仔细观察,您会在每个标题的末尾看到来源(CNN)。这被称为.provider我想摆脱整个 div (.embed) 如果单词 CNN 位于 div 中的 elsewere (意思是重复),.description或者a

我尝试了很多东西,这是其中非常直接的代码之一:

    $('.embed').each(function() {
    if($('.embed a:first **could also be .description**', this).text() == $('.provider', this).text())
        $(this).remove();
});

我无法弄清楚为什么它不起作用。我也使用它onlive单击没有运气。

我刚刚意识到文档中没有“嵌入”。我添加了一个带有单击事件的按钮,您可以在嵌入加载后单击该按钮:http: //jsfiddle.net/2VBSX/37/

4

2 回答 2

2

您可以使用成功事件从数据中过滤提供者类,如下所示:

已编辑

  $('div.newscontainer').embedly({
    key: ':3eccf441bf0f43acbb076da9817af27d',
    success: function(oembed, dict) {

        output = $(oembed['code']);
        description = $(oembed['code']).find(".description").text();           
        var regex =new RegExp(output.find('.provider').text(),"i");
        if(regex.exec(description) == null ) {              
            $(dict["node"]).parent().html(output);
        }

        output.find("a:eq(0)").text(); // First
        output.find("a:eq(1)").text(); // Provider


    }
});

签出这个 jsfiddle 演示

于 2012-12-31T12:50:04.783 回答
0

就是你想要的吗?

var regex = /CNN/;
$('.embed').each(function(index, element) {

    if (regex.exec($('.embed a:first').text()) != null 
       && regex.exec($('.provider').text()) != null) {
        element.remove();
    }
});
于 2012-12-31T11:56:10.937 回答