
November 19th, 2012, 01:45 PM
|
|
Registered User
|
|
Join Date: Nov 2012
Posts: 1
Time spent in forums: 32 m 56 sec
Reputation Power: 0
|
|
Homework - Java/XML help
I'm working on a video player that pulls from an xml playlist. So far I have it success fully pulling from the following xml structure:
course
chapter - looping object
title (video title)
screen (video location and type)
description (description of video)
/chapter
/course
Here is what I would like to do, but am having difficulty understanding how to set it up properly:
course
courseinfo label=" "
chapter label =" "
screen label = " " (instead of title) path= " " (url to file) type="video/mp4" /screen
/chapter
/courseinfo
/course
here is the code that I am using:
<code>
// properties
var XML_PATH = "xml/screens.xml";
var video_width;
var video_height;
var videos_array=new Array();
// init the application
function init()
{
// call loadXML function
loadXML();
}
// XML loading
function loadXML()
{
$.ajax({
type: "GET",
url: XML_PATH,
dataType: "xml",
success: function onXMLloaded(xml)
{
// set video_width and video_height
video_width=$(xml).find("course").attr("width");
video_height=$(xml).find("course").attr("height");
// loop for each item
$(xml).find('chapter').each(function loopingItems(value)
{
// create an object
var obj={title:$(this).find("title").text(), screen:$(this).find("screen").text(), description:$(this).find("description").text()};
videos_array.push(obj);
// append <ul> and video title
$("#playlist2").append('<ul>');
$("#playlist2").append('<a><li id="chapter"><strong>'+obj.title+'</strong></li></a>');
});
// close </ul>
$("#playlist2").append('</ul>');
// append video tag player
$("#player").append('<video width="600" height="300" controls="controls"><source src="'+videos_array[0].screen+'" type="video/mp4" />Your browser does not support the video tag.</video>');
// append description
$("#description").append(videos_array[0].description);
// call addListeners function
addListeners();
}
});
}
// add <li> listener
function addListeners()
{
// loop for each list item
$('#playlist2 li').each(function looping(index)
{
// onclick...
$(this).click(function onItemClick()
{
// empty left column and description
$("#player").empty();
$("#description").empty();
// append video tag
$("#player").append('<video width="600" height="300" controls="controls"><source src="'+videos_array[index].screen+'" type="video/mp4" />Your browser does not support the video tag.</video>');
// append description
$("#description").append(videos_array[index].description);
});
});
}
</code>
Also, I want to display the course info lable in a box called #courseinfo.
The player is set up with the video element on top, then I've been trying to put in the courseinfo under that, then the description, then the actual playlist.
any help would be much appreciated
|