用AJAX编写一个简单的相册

ajax

AJAX(Asynchronous JavaScript And XML)是一种运用JavaScript和可扩展标记语言(XML),在网络浏览器和服务器之间传送或接受数据的技术。主要应用于Ria(Rich internet applications)的开发上。 

xml问题终于在今天还是解决了。最后在FireFox里还是使用了Dom的一些老方法。我这里就具体解释一下方法吧.

代码:

var XmlHttp; //用来定义一个xmlHttpRequest对象
var temp_url_arr=new Array()
var temp_title_arr=new Array()
var list_arr=new Array()
if (window.XMLHttpRequest) {
 XmlHttp = new XMLHttpRequest()
 if (XmlHttp.overrideMimeType) {
  XmlHttp.overrideMimeType('text/xml');
 }
} else if (window.ActiveXObject) {
 XmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
//上面这段话是判断当前浏览器版本,以定义给XmlHttp不同的xmlHttpRequest对象.如果服务器的响应没有XML mime-type header,某些Mozilla浏览器可能无法正常工作。 所以需要XmlHttp.overrideMimeType('text/xml');来修改该header.

function getData() { //读取数据
 XmlHttp.onreadystatechange = praseXml;
 XmlHttp.open("GET", "xmldata2.xml", true);
 XmlHttp.send(null);
}

function praseXml() { //解析数据
 if (XmlHttp.readyState == 4) {
  if (XmlHttp.status == 200) {
   var xmldoc = XmlHttp.responseXML;
   var root=xmldoc.getElementsByTagName('data').item(0)
   //使用这样的方法才可在FireFox里面生效.至少xPath我没成功过.
   for (var iRoot = 0; iRoot < root.childNodes.length; iRoot++) {
    //alert(root.childNodes.item(iRoot))
    var pic_node=root.childNodes.item(iRoot)
    for (iPic = 0; iPic < pic_node.childNodes.length; iPic++) {
     var url_node=pic_node.childNodes.item(iPic)
     for (iURL = 0; iURL < url_node.childNodes.length; iURL++) {
      var obj=new Object()
      obj.type=url_node.nodeName
      obj.content=url_node.childNodes.item(iURL).nodeValue
      if(url_node.nodeName == "url"){
       temp_url_arr.push(obj)
      }else if(url_node.nodeName == "title"){
       temp_title_arr.push(obj)
      }
     }
    }
   }
   install_list()
  }
 }
}

function install_list(){ //整理得到的数据并装载到list_arr数组中。
 list_arr=new Array()
 var target_div=document.getElementById('catelog');
 target_div.innerHTML=""
 for(var i=0;i<temp_url_arr.length;i++){
  var obj=new Object()
  obj.url=temp_url_arr[i].content
  obj.title=temp_title_arr[i].content
  list_arr.push(obj)
 }
 for(var i=0;i<list_arr.length;i++){
  target_div.innerHTML +="<a href='#'  onClick='img_loader(\""+list_arr[i].url+"\");'>"+list_arr[i].title+"</a><br>";
 }
}

function img_loader(param1){ //加载图片方法
 var target_div=document.getElementById('pic');
 target_div.innerHTML="<img src="+param1+">"

 

时间: 2024-10-26 03:33:35

用AJAX编写一个简单的相册的相关文章

中文字符-如何用C语言编写一个简单的输入法程序,要求可以输入汉字。

问题描述 如何用C语言编写一个简单的输入法程序,要求可以输入汉字. 不太清楚汉字在计算机中是如何存储的,想知道例如微软的智能ABC以及搜狗输入法是怎样实现拼音拼写下的汉字输入. 解决方案 首先要有一个汉字的编码库,比如GB2312编写的是拼音输入法的话,还要建立一个拼音与汉字对应的数据库然后根据用户输入的拼音,提示出对应的汉字(汉字的优先顺序由数据库决定,同时还可以学习该用户的使用习惯)如果输入法还支持智能联想输入的话,还要加入词库(也有优先级),这样可以根据前一个字来推断出下一个可能的字 解决

怎么用Java编写一个简单的登录系统?可以注册账号的那种

问题描述 怎么用Java编写一个简单的登录系统?可以注册账号的那种 数据库用的是MySQL,但Java操作方面的不知道怎么入手,求大神指点啊,有实例参考就更好了,谢谢 解决方案 import java.awt.event.*; import javax.swing.*; import java.awt.*; import java.awt.Container; import java.util.*; import java.sql.*; class Login extends JFrame im

pdf-求教:如何用c++编写一个简单的PDF文件检测工具?

问题描述 求教:如何用c++编写一个简单的PDF文件检测工具? 想编写一个在Windows下的用c++编写的程序能够检测PDF中是否有恶意代码,求高手帮忙. 解决方案 和编写防病毒软件类似,可以通过特征代码判断.先要建立一个特征库.

初学者 用visual studio中的C#编写一个简单的电子词典 在线等 求帮助

问题描述 初学者 用visual studio中的C#编写一个简单的电子词典 在线等 求帮助 求大神用visual studio2010帮忙编一个简单电子词典的程序,在线等 新人初学者求帮助 解决方案 很简单啊,写个数组就行了 解决方案二: 如果是像上面这样的电子词典,很容易解决.1.使用INI进行保存条目.(想要了解INI可以参考:http://www.cnblogs.com/Ray-chen/archive/2011/11/14/2248496.html)2.使用StreamWriter来读

sql-试编写一个简单SQL脚本程序,创建工资表并完成计算实发工资的任务。

问题描述 试编写一个简单SQL脚本程序,创建工资表并完成计算实发工资的任务. 假设有职工工资表:R(职工号,姓名,基本工资,附加工资,房租,水电,应发工资,税款,实发工资)缴纳个人所得税的规定如下:个人收入>5000,税率20%个人收入>2000,税率10%个人收入>800,税率5%个人收入<800,免税工资的计算方法:(1)应发工资=基本工资+附加工资(2)采取分段计算税款的算法,超出5000部分收20%,2000-5000之间部分收10%,以此类推.(3)实发工资=应发工资-税

界面-基于WinPcap,编写一个简单的数据包捕获程序

问题描述 基于WinPcap,编写一个简单的数据包捕获程序 * 功能要求: 1) 要求提供图形界面(类似Wireshark),可以捕获网络数据包:提供包过滤功能,可以输入过滤表达式:可以指定时段抓包:显示指定数据包的内容: 2) 提供网络数据包统计功能:提供输入IP地址,向指定IP地址发送数据包 3) 提供数据转储功能,将捕获到的数据包存储到磁盘文件,并可以读取转储的文件 4) 界面美观.大方 解决方案 一个简单的摄像头视频浏览和捕获的程序(转载)WinPcap捕获数据包 解决方案二: ** 看

Hadoop的环境搭建,和编写一个简单的hadoop job

hadoop 入门: 0hadoop的简要介绍 google之所以能够成功,一个重要的技术就是map-reduce.map-reduce是google为大规模的.分布式数据进行处理的一种编程模式. 而本文介绍的hadoop是apache的开源map-reduce实现.本文不过多的介绍map-reduce,主要精力放在hadoop的配置和编写一个简单的haoop程序上 对map-recude感兴趣的朋友可以进一步阅读参考文献. 1 hadoop服务器的安装: hadoop是一个分布式的处理框架,本

5、编写一个简单的JAVA Application 应用程序,编写两个方法area1,area2计算圆柱体的表面积和体积,圆柱体半径R=5,高H=10,并输出计

问题描述 5.编写一个简单的JAVAApplication应用程序,编写两个方法area1,area2计算圆柱体的表面积和体积,圆柱体半径R=5,高H=10,并输出计算结果急求答案谢谢

【求助】如果要编写一个简单的SQL漏洞注入程序,需要学习哪方面的知识?

问题描述 我想学习编写一个简单的SQL漏洞注入程序,可惜完全没头绪,希望高手能指点迷津,最好能介绍点相关资料,语言也推荐下