gpt4 book ai didi

javascript - 抓取YouTube ID和其他变量以嵌入JavaScript

转载 作者:行者123 更新时间:2023-12-03 06:03:20 25 4
gpt4 key购买 nike

因此,我看过很多脚本可以使用JavaScript从URL中获取YouTube ID,但是我找不到或弄清楚如何与其他变量一起获取ID。我有一个可以做到的PHP脚本,但是我想用JavaScript做到这一点。有谁知道如何做到这一点?

我怀疑是否有必要,但这是我正在使用的两个脚本

用于视频ID的JavaScript ...

url = $(this).text();
var regExp = /^.*(youtu.be\/|v\/|u\/\w\/|embed\/|watch\?v=)([^#\&\?]*).*/;
var match = url.match(regExp);
if (match&&match[2].length==11){
alert(match[2]);
}else{
alert("not youtube");
}

和PHP ...
if (preg_match('%(?:youtube\.com/(?:[^/]+/.+/|(?:v|e(?:mbed)?)/|.*[?&]v=)|youtu\.be/)([^"&?/ ]{11})%i', $url, $match)) {
$youtubeid = $match[1];
$getyt = (parse_url($url));
}
if(strlen($getyt['fragment']) > 0) {
$addhash = '#' . $getyt['fragment'];
}
$embed = "http://www.youtube.com/embed/$youtubeid?wmode=opaque&autoplay=1$addhash";

PHP之一非常好,除了它仅适用于哈希标记。我想要其他变量的主要原因是,当有人要指定开始时间时。因此,如果有人可以告诉我如何获取URL和其他参数(或只是视频的指定开始时间),那么我将不胜感激,因为我绝对迷路了。

最佳答案

这将创建一个名为video_parameters的关联数组:

function extractParameters(url)
{
var query = url.match(/.*\?(.*)/)[1];
var assignments = query.split("&")
var pair, parameters = {};
for (var ii = 0; ii < assignments.length; ii++)
{
pair = assignments[ii].split("=");
parameters[pair[0]] = pair[1];
}
return parameters;
}

url = "http://www.youtube.com/watch?v=gkU&list=UUa3Q&feature=plcp";
video_parameters = extractParameters(url);

// video_parameters["v"]
// > "gkU"
// video_parameters["list"]
// > "UUa3Q"

有关处理特殊字符的方法,请参见 How can I get query string values in JavaScript?

关于javascript - 抓取YouTube ID和其他变量以嵌入JavaScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9615156/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com