0

Embedlyというサービスを使用して、GoogleFeedburnerからのRSSフィードのスタイルを設定しています。彼女のサンプルコードがあります:JsFiddle

よく見ると、すべてのタイトルの最後にソース(CNN)があります。これは.provider、div全体(.embed)を削除したいというものです。CNNという単語がdiv内にある場合(重複を意味する)、.descriptionまたはa

私は多くのことを試しましたが、これは本当に単純なコードの1つです。

    $('.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 に答える