如何更改嵌入式vimeo视频的ID?这是嵌入代码,例如:
<object width="578" height="325">
<param name="allowfullscreen" value="true" />
<param name="allowscriptaccess" value="always" />
<param name="movie" value="http://vimeo.com/moogaloop.swf?clip_id=11527784&
server=vimeo.com&show_title=1&show_byline=0&show_portrait=0&color=00ADEF&fullscreen=1" />
<embed src="http://vimeo.com/moogaloop.swf?clip_id=11527784&
server=vimeo.com&show_title=1&show_byline=0&show_portrait=0&
color=00ADEF&fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true"
allowscriptaccess="always" width="578" height="325"></embed></object>
如何使用JQuery或纯javascript更改对象值和嵌入源中的 clip_id ?
它的效果是它改变了视频。我在Firefox上测试了这个,如果这不适用于所有浏览器,请告诉我!
感谢大家的帮助
答案 0 :(得分:2)
对此有一些跨浏览器的含义。
您可能需要查看another question on SO。
您应该将SWFObject插件用作stated by SolutionYogi。
这是另一个相关的问题: How to use javascript to swap swf in html?
答案 1 :(得分:1)
我不确定“何时”你要替换它,所以我点击了它。试试这个:
$('#change_me').click(function() {
var val = $('embed').attr('src').replace(/clip_id=(?=\d).\d+/g, 'clip_id='+new_id);
$('embed').attr('src', val);
alert($('embed').attr('src'));
});
这个正则表达式会找到clip_id后跟任何数字和只有数字,并用新的id替换它们。您可以在包含clip_id的两个网址上执行此操作。我很确定它适用于所有浏览器,虽然我现在无法测试它。
注意:我确信可以使用更好的正则表达式,但我并不特别喜欢它们,所以我只能想出atm。
希望这有帮助
答案 2 :(得分:0)
var params = document.getElementsByTagName("param");
var clip_url = 11527780;
var vimeo = "http://vimeo.com/moogaloop.swf?clip_id=" + clip_url + "&server=vimeo.com&show_title=1&show_byline=0&show_portrait=0&color=00ADEF&fullscreen=1";
params[2].setAttribute("value", vimeo);
var embed = document.getElementsByTagName("embed");
embed[0].setAttribute("src", vimeo);
clip_url是vimeo视频的ID。