使用 JQuery 更改 Vimeo 视频

发布于 2024-09-04 05:42:23 字数 924 浏览 9 评论 0原文

如何更改嵌入的 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&amp;
server=vimeo.com&amp;show_title=1&amp;show_byline=0&amp;show_portrait=0&amp;color=00ADEF&amp;fullscreen=1" />
<embed src="http://vimeo.com/moogaloop.swf?clip_id=11527784&amp;
server=vimeo.com&amp;show_title=1&amp;show_byline=0&amp;show_portrait=0&amp;
color=00ADEF&amp;fullscreen=1" type="application/x-shockwave-flash" allowfullscreen="true" 
allowscriptaccess="always" width="578" height="325"></embed></object>

如何使用 JQuery 或纯 JavaScript 更改对象值和嵌入源中的 clip_id

其效果是改变了视频。我已经在 Firefox 上进行了测试,如果这不适用于所有浏览器,请告诉我!

感谢大家的帮助

How can I change the ID of the embedded vimeo video? Here is the embed code for example:

<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>

How can I change the clip_id in both the object value and the embed source using JQuery or just pure javascript?

The effect this has is that it changes the video. I have tested this on Firefox, if this won't work on all browsers please let me know!

Thanks all for any help

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

鲸落 2024-09-11 05:42:23

这会产生一些跨浏览器的影响。

您可能想看看关于SO的另一个问题

您应该使用 SWFObject 插件来实现此目的,如 SolutionYogi 所述。

这是另一个相关问题:
如何使用 javascript 在 html 中交换 swf?

There are some cross-browser implications for this.

You might want to take a look at another question on SO.

You should use the SWFObject plugin for this as stated by SolutionYogi.

Here's another related question:
How to use javascript to swap swf in html?

<逆流佳人身旁 2024-09-11 05:42:23

我不确定你想“什么时候”更换它,所以我点击了一下就完成了。试试这个:

$('#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。

希望这有帮助

I am not sure "when" you want to replace it, so I made it on click. Try this:

$('#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'));
});

This regular expression will find clip_id followed by any numbers and only numbers and replace them with the new id. You can do this on both urls that contain clip_id. I am pretty sure it will work on all browsers, although I cant test it right now.

Note: I am sure that a better regular expression could be used, but I am not particulary good with them, so thats all I can come up with atm.

Hope this helps

离不开的别离 2024-09-11 05:42:23
    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。

    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 is the id of the vimeo video.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文