0

我正在使用 twitter API 提取推文并将其分配给一个变量。像这样。

        self.tweets = $.map(data.results, function(tweet){
                return{
                    author: tweet.from_user,
                    url: 'http://twitter.com/' + tweet.from_user + '/status/' + tweet.id_str,
                    image: tweet.profile_image_url,
                    tweet: tweet.text
                };
            });

我为我工作。我将推文附加到 HTML。文字是这样的。。

 @drwarwick Hi David! Looking forward to catching up with you, but may not get in there today due to work commitments...

我现在要做的是将@drwarwick 包装到@drwarwick 中,以便我可以相应地对其进行样式设置和链接。我如何在推文中找到 uisng jquery 任何这样的词。谢谢。

编辑>>>>>

类似stackoverflow的东西在上面做。它改变了文本的颜色。

4

1 回答 1

1

我只是写了一个辅助方法来做到这一点。

function HighLight(input)
{
    var output="";
    var items=input.split(" ");
    $.each(items,function(index,item){
       var word=items[index];
       if(word.match("^@"))
       {
           word="<span class='highlightSpan'>"+word+"</span>";  
       }                         
       output+=word+" ";
    });    
    return output;
}

工作示例:http: //jsfiddle.net/ZSafX/27/

您可以更改代码以包含这样的代码

    self.tweets = $.map(data.results, function(tweet){
            return{
                author: tweet.from_user,
                url: 'http://twitter.com/' + tweet.from_user + '/status/' + tweet.id_str,
                image: tweet.profile_image_url,
                tweet: HighLight(tweet.text)
            };
        });
于 2012-04-30T03:53:52.117 回答