我使用“jquery-lifestream(https://github.com/christianv/jquery-lifestream/)”从FB和Twitter获取社交Feed。 它工作正常。
但我无法点击所有链接。
但不是图片的链接...... 这是代码:
var linkify = function( tweet ) {
var link = function( t ) {
//Add link to all http:// links within tweets
return t.replace(
/((https?|s?ftp|ssh)\:\/\/[^"\s\<\>]*[^.,;'">\:\s\<\>\)\]\!])/g,
function( m ) {
return '<a href="' + m + '" target="_blank">' +
( ( m.length > 25 ) ? m.substr( 0, 24 ) + '...' : m ) +
'</a>';
}
);
},
at = function( t ) {
return t.replace(
/(^|[^\w]+)\@([a-zA-Z0-9_]{1,15})/g,
function( m, m1, m2 ) {
return m1 + '<a href="http://twitter.com/' + m2 + '" target="_blank">@' +
m2 + '</a>';
}
);
},
pc = function( t ) {
return t.replace(
/* WHAT DO I PUT HERE ? */
function( m ) {
return '<a href="http://pic.twitter.com/' + m + '" target="_blank">' + m + '</a>';
}
);
},
hash = function( t ) {
return t.replace(
/\B#([_a-z0-9ÅåÄäÖöØøÆæÉéÈèÜüÊêÛûÎî_]+)/ig, function(reply) {
return '<a href="https://twitter.com/search?q='+encodeURI(reply.substring(1))+'" target="_blank">'+reply.charAt(0)+reply.substring(1)+'</a>';
}
);
};
return hash(pc(at(link(tweet))));
}
我尝试了几个regexp,他们都没有做这个工作,因为我不是js专家......
这里已经提出了问题,但答案对我没有帮助=&gt;即:regex how to replace twitter links) 还找到了这个脚本(https://github.com/twitter/twitter-text-js/blob/master/twitter-text.js),但我无法正常运行,所以我不知道它是否对我有用..
如何在不弄乱整个图片的情况下获取图片的链接? 感谢
[编辑]感谢regex101(以及他们的在线测试人员),因为我终于得到了最终的解决方案:)
return t.replace(
/((pic.twitter.com)\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*?$)/i,
function( m, m1, m2 ) {
return '<a href="http://' + m + '" target="_blank">' + m + '</a>';
}
);
由于