YouTube 使用 JavaScript

XMLFile XML

Hippani Animator 具有加载 XML 数据,并使用它来创建数据驱动的 web 页的能力。仅可以从 web 服务器或本地主机加载 XML。如果您尝试加载您硬盘上的任何 XML,该 XML 对象可能具有状态等于 0。一些浏览器 Internet Explorer 喜欢不要允许直接访问到硬盘或跨域 XML。可以添加到库中或者从 URL 加载 XML。如果您需要从另一个域加载 XML,比一个导出的 HTML 上承载,XML 必须从本地服务器页面重定向或包含头 Access-Control-Allow-Origin: *。分析的 XML 对象时要小心。不同的 web 浏览器以不同的方式处理 XML。某些浏览器包括空的空间作为文本节点,有些则不。某些浏览器允许跨域 XML,有些则不。请尝试列出节点在不同的 web 浏览器中可以查看的差异的详细信息。如何加载 XML 文档的基本示例调用 XMLFile1 从图书馆。


OpenXML("XMLFile1",Result);
function Result(XML){
if(XML.status==200){
alert(XML.documentElement.nodeName);
}else{
alert("Error Code "+XML.status);
}
}

XML 示例

此示例演示如何从 XML 文件读取的水果的列表到一个数组中。


<?xml version="1.0" encoding="utf-8" ?>
<List>
<Fruit>Apple</Fruit>
<Fruit>Banana</Fruit>
<Fruit>Orange</Fruit>
<Fruit>Pear</Fruit>
<Fruit>Pineapple</Fruit>
<Fruit>Grapes</Fruit>
</List>

OpenXML("XMLFile1",Result);
function Result(XML){
if(XML.status==200){
var Node=XML.documentElement.firstChild;
var List=new Array();
while(Node!=null){
if(Node.firstChild!=null){
List.push
(Node.firstChild.nodeValue);
}
Node
=Node.nextSibling;
}
alert("Loaded list. Length="+List.length+" First Item="+List[0]);
}else{
alert(XML.status+" Error!!!");
}
}

发送 XML

XML 函数可以用于发送数据到 web 服务器。只要 web 服务器的响应与有效的 XML。该 URL 还必须有效,这种空格字符和标点必须将其转换到 URL 代码如空间是 20%。此示例显示如何你可能会发送一条消息并期望回一些简单的 XML <Success/>。


OpenXMLUrl("http://www.MyServer.com?Message=This%20is%20a%20Test", Result);
function Result(XML){
if(XML.status==200){
if(XML.documentElement.nodeName=="Success"){
alert("Message received");
}
}else{
alert(XML.status+" Error!!!");
}
}

重定向 XML

如果您需要从另一个域加载 XML,比一个导出的影片上承载,XML 必须从本地服务器页面重定向或包含头 Access-Control-Allow-Origin: *。这是一个示例的 ASP.NET 可以用来将我们的 RSS 重定向的页面饲料,使它出现饲料来自 HTML 相同的服务器。我们还添加了要显示如何才能做到这点的头。PHP 等,可以使用其他服务器页。


<%@ Page Language="C#" %>
<%@ Import Namespace="System.Net" %>
<%WebClient WC = new WebClient();
string XML=WC.DownloadString("http://www.Hippani.com/?S=RSS");
Response.AddHeader("Access-Control-Allow-Origin", "*");
Response.ContentType = "text/xml";
Response.Write(XML);
%>

Script 脚本

Open XML • 打开到 XML 对象的 XML 文件。此功能在后台运行,需要上在图书馆和一个函数,当它加载的 XML 对象发送到 XML 文件的名称。

OpenXML("名称",响应:函数);

Open XML 的 Url • 到 XML 对象从 URL 打开 XML 文件。此函数在后台运行,需要一个 URL 和一个函数,当它加载的 XML 对象发送到。

OpenXMLUrl("http://",响应:函数);

Open XML 方法 Url • 到 XML 对象从 URL 打开 XML 文件。此函数在后台运行,需要一个 URL 和一个 XML 对象发送到它加载时的函数。HTTP 方法可以是 GET, POST, HEAD, OPTIONS, PUT, DELETE, TRACE。一些方法,如 POST,允许要发送的数据字符串。

OpenXMLMethodUrl("http://","GET",null,响应:函数);

OpenXMLMethodUrl("http://www.MySite.com/XML.php","POST","Name=Fruit&Value=Apple",Result);
function Result(XML){

}

XML 对象

documentElement • XML 文档的根节点。

status • XML 文档的状态。0-XML 对象失败。此浏览器可能不支持 XML,页面可能在另一个域或不在 web 服务器上。1-URL 无效。2-XML 无效。200-成功。400 - 499-请求失败。该文件可能不存在或访问被拒绝。500 - 599-响应失败。服务器返回XML文档失败,在 web 服务器上可能有错误。

XML 节点

attributes • 返回节点的属性。例如 <Node attribute1="Value1" attribute2="Value2" />"

nodeName • 节点的名称。一个文本节点被命名为 #Text。

nodeValue • 节点的值。为文本节点值是文本。

若要获取某个节点中的文本:


var InnerText=null;
if(ExampleNode.firstChild!=null){
InnerText
=ExampleNode.firstChild.nodeValue;
}

nodeType • 节点的类型。

parentNode • 父节点。

firstChild • 此节点的第一个子节点。

lastChild • 此节点的最后一个子节点。

nextSibling • 下一个节点。

previousSibling • 上一个节点。

列表中的节点的所有子节点的详细信息:


var Node=ExampleNode.firstChild;
var List="";
while(Node!=null){
List
+=Node.nodeName+" "+Node.nodeType+" "+Node.nodeValue+"\r\n";
Node
=Node.nextSibling;
}
alert(List);

XML 属性

length • 在节点中的属性数。

item • 按索引返回的属性。

.item(索引:数量)

getNamedItem • 按名称返回属性。

.getNamedItem("名称")

列表中的节点的所有属性:


var Attr=ExampleNode.attributes;
var List="";
for(var i=0;i<Attr.length;i++){
List
+=Attr.item(i).name+"="+Attr.item(i).value+"\r\n";
}
alert(List);

XML 属性

name • 属性的名称。

value • 属性值。

YouTube 使用 JavaScript
本文档是从使用在线翻译的英语翻译。如果您发现任何错误,我们深表歉意。如果你想要帮助我们改正错误。还有一个翻译编辑器在 Hippani Animator (在帮助菜单上)。我们给出免费许可证密钥谁纠正了超过 100 个短语。请更多详细信息,联系我们。