用户可以在任何页面上留言,并粘贴任何IMDb链接。
我已经抓住并操纵了这些链接:
jQuery('[href*="imdb.com/title"]').addClass('imdb-link').after(' <span class="imdbRatingPlugin" data-title="" data-style="p4"><img src="logo.png" alt="IMDb" style="max-height:16px" /> </span>');
现在,我一直在努力解决的问题是如何将IMDb电影标题ID复制到data-title=""
。
必须以动态方式和每个链接完成,就像我已经定位链接一样。
以下是真实IMDb链接的示例:
http://www.imdb.com/title/tt0068646/
tt0068646 部分需要像data-title="tt0068646"
那样被复制。同样,动态地,因为用户可以输入数十万种可能性的任何链接。
正则表达式是/imdb\.com\/title\/(\w+)/
的一个选项。但是,如何在这种情况下实施呢?
答案 0 :(得分:1)
您可能需要迭代每个链接,而不是尝试一次更改所有链接。
jQuery('[href*="imdb.com/title"]').each(function() {
var id = /imdb\.com\/title\/(\w+)/.exec(jQuery(this).prop("href"));
$(this)
.addClass('imdb-link')
.after(' <span class="imdbRatingPlugin" data-title="' + id[1] + '" data-style="p4"><img src="logo.png" alt="IMDb" style="max-height:16px" /> </span>');
});
以这种方式执行此操作较慢,但它允许您访问单个元素的属性。
或者,您可能需要使用jQuery(this).attr("href")