如何使用 jQuery 动态抓取 on-page URL 的一段?
How to dynamically grab a segment of an on-page URL with jQuery?
用户可以在任何页面上发表评论,并粘贴到任何 IMDb link。
我已经像这样抓住并操纵那些 link:
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=""
。
它必须在 per-link 的基础上动态地完成,就像我已经针对 link 的方式一样。
这是一个真实的 IMDb 示例 link:
http://www.imdb.com/title/tt0068646/
只有 tt0068646 部分需要像这样 data-title="tt0068646"
复制过来。同样,动态地,因为用户可以输入任何 link,数十万种可能性。
regex 是 /imdb\.com\/title\/(\w+)/
的一个选项。但是,如何在这种情况下实施?
您可能需要遍历每个 link 而不是尝试一次更改所有这些。
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")
用户可以在任何页面上发表评论,并粘贴到任何 IMDb link。
我已经像这样抓住并操纵那些 link:
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=""
。
它必须在 per-link 的基础上动态地完成,就像我已经针对 link 的方式一样。
这是一个真实的 IMDb 示例 link:
http://www.imdb.com/title/tt0068646/
只有 tt0068646 部分需要像这样 data-title="tt0068646"
复制过来。同样,动态地,因为用户可以输入任何 link,数十万种可能性。
regex 是 /imdb\.com\/title\/(\w+)/
的一个选项。但是,如何在这种情况下实施?
您可能需要遍历每个 link 而不是尝试一次更改所有这些。
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")