Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用jquery从动态div中提取变量值_Jquery_Xml_Html5 Video - Fatal编程技术网

使用jquery从动态div中提取变量值

使用jquery从动态div中提取变量值,jquery,xml,html5-video,Jquery,Xml,Html5 Video,我在另一个堆栈溢出Q中找到了答案,当时我做了一个稍微不同的搜索。代码的关键行是: var videoFile = $(this).find('.vid_file').text(); 使用“this”引用每个videoLink div,然后在videoLink中找到vid_文件div,并读取文本。希望这能帮助别人 我正在用HTML、XML和JQuery创建一个动态视频库。读入XML文件后,我输出一个HTML字符串,为每个视频(.videoLink)创建一个动态div。在该div中包含包含视频标题

我在另一个堆栈溢出Q中找到了答案,当时我做了一个稍微不同的搜索。代码的关键行是:

var videoFile = $(this).find('.vid_file').text();
使用“this”引用每个videoLink div,然后在videoLink中找到vid_文件div,并读取文本。希望这能帮助别人

我正在用HTML、XML和JQuery创建一个动态视频库。读入XML文件后,我输出一个HTML字符串,为每个视频(.videoLink)创建一个动态div。在该div中包含包含视频标题、background.jpg路径和视频文件名(.vid_文件)的子div。所有这些都正常工作。但是我在提取每个.vid_文件的唯一值时遇到了问题(我的数据库中有6个测试视频)。以下是我正在使用的代码:

$('.videoLink').click(function(e){
    e.preventDefault();
    $('vid_file').each(function (){
    var videoFile = $(this).text();

    var videoCode = '<video controls autoplay autobuffer>' +
        '<source src="video/'+videoFile+'.ogv" type="video/ogg" />' +
        '<source src="video/'+videoFile+'.mp4" type="video/mp4" />' +
        '</video>';

    $('#videoPlayer').html(videoCode);
$('.videoLink')。单击(函数(e){
e、 预防默认值();
$('vid_file')。每个(函数(){
var videoFile=$(this.text();
var视频代码=“”+
'' +
'' +
'';
$('#videoPlayer').html(视频代码);

等等(我使用fancybox来显示视频——这是可行的)。上面的代码的作用是,当你点击其中一个时,它们都会播放。我意识到这正是我要求它用这段代码所做的,但我尝试了许多变体(将点击事件嵌套在.each方法中;反之亦然,等等)让他们玩是我最接近成功的一次了。所以我想我已经接近成功了。但还不完全。我错过了什么?提前感谢你的帮助。--谢丽尔,你似乎错过了选择器中的点。所以使用以下命令

$('.vid_file').each(function (){
    var videoFile = $(this).text();

    var videoCode = '<video controls autoplay autobuffer>' +
        '<source src="video/'+videoFile+'.ogv" type="video/ogg" />' +
        '<source src="video/'+videoFile+'.mp4" type="video/mp4" />' +
        '</video>';

    $('#videoPlayer').html(videoCode);
}
$('.vid_文件')。每个(函数(){
var videoFile=$(this.text();
var视频代码=“”+
'' +
'' +
'';
$('#videoPlayer').html(视频代码);
}

谢谢,这是一个输入错误。重复代码太多次了!还是一样——所有六个同时播放。哦,灯箱中显示的是列表中的最后一个。你能为它创建JSFIDLE吗??