我在页面上有一系列YouTube网址,每个网址都像以下网址之一:
<iframe width="640" height="360" src="//www.youtube.com/embed/XFMjR2SgEP0?list=PLd4hww6QWFS5HMUQzSs3r-90jMRtCiCdi" frameborder="0" allowfullscreen></iframe>
<iframe width="640" height="360" src="//www.youtube.com/embed/DVPP1elkhKU" frameborder="0" allowfullscreen></iframe>
如您所见,上面的第一个标记在URL的末尾有一个'list'参数;第二个标记在URL上没有参数。
我需要使用jQuery向页面上的每个YouTube网址添加新参数showinfo=0
。显然,这需要先加?
或&
,具体取决于是否还有其他参数。
如何?
答案 0 :(得分:2)
检查是否存在问号并适当追加:
$('iframe').attr('src', function(idx, src) {
return src + (src.indexOf('?') > -1 ? '&' : '?') + 'showinfo=0';
});
答案 1 :(得分:0)
您知道.attr()
可以使用回调函数吗?
$('iframe[src*="youtube.com"]').attr('src', function (i, str) {
return (str.match(/\?/)) ? str+'&showinfo=0' : str+'?showinfo=0';
});