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+">" } |
分享到:
相关推荐
基于xmlAjax相册管理
创建一个简单的相册添加Sajax扩展相册元数据结束语异步JavaScript和XML(AsynchronousJavaScriptandXML,Ajax)无疑是最流行的新Web技术。“结合Ajax进行PHP开发”这个系列包括两部分,我们将完全使用PHP和...
本文将使用两种方法创建一个简单的相册:传统的 Web 应用程序和基于 Sajax 的应用程序。我们将用 PHP 编写一个相册,读取某一目录中的内容,显示缩略图组成的表格。如果用户单击一个缩略图,就会完全展开该图像。...
广告轮显 检测用户名是否存在 轻松实现无刷新三级联动菜单 搜索提示功能 关机效果 无刷新上传文件 用AJAX编写一个简单的相册 折叠菜单
使用php编写的 基于Ajax技术的以xml为基础基于数据中心的相册管理系统
本文中我们将完全使用 PHP 和 Simple Ajax Toolkit (Sajax) 创建一个简单的相册作为在线 Web 应用程序。我们首先用标准的 PHP 开发方法编写简单的相册,然后再用 Sajax 将其变成活动的 Web 应用程序。
DIV+CSS布局,交互方式采用当前最流行的AJAX技术,所有操所在一个页面完成,并实现了AJAX的最高应用—— AjaxUpload,所有操作一气呵成,带来前所未有的用户体验。 简洁的主题与皮肤开发技术,更合理的模块化...
作为一个有多年编程经验的程序员,笔者相信“代码就是硬道理”,因此本书中涵盖了 Ajax 的绝大部分实际应用场景。希望读者也不要仅仅“看书”,而一定要参照本书进行动手操作,将每个应用都实际做一遍,相信会有很大...
本文将使用两种方法创建一个简单的相册:传统的Web 应用程序和基于Sajax的应用程序。我们将用PHP编写一个相册,读取某一目录中的内容,显示缩略图组成的表格。如果用户单击一个缩略图,就会完全展开该图像。因为编写...
本系统采用Jsp+Servlet+JDBC的架构编写,表现层页面采用Jstl1.1和EL表达式语言进行数据的表现,部分简单功能功能采用了Ajax技术,开发周期5天(有点长),其中图片上传采用apache的FileUpload组件,并且进行了简易...
一个简单的CS模式的聊天软件,用socket实现,比较简单。 凯撒加密解密程序 1个目标文件 1、程序结构化,用函数分别实现 2、对文件的加密,解密输出到文件 利用随机函数抽取幸运数字 简单 EJB的真实世界模型(源代码...
DIV+CSS布局,交互方式采用当前最流行的AJAX技术,所有操所在一个页面完成,并实现了AJAX的最高应用—— AjaxUpload,所有操作一气呵成,带来前所未有的用户体验。 简洁的主题与皮肤开发技术,更合理的模块化...
“结合Ajax进行PHP开发”系列包括两部分,第1部分创建了Ajax相册应用程序,这一部分我们将使用JavaScript为其建立一个历史堆栈(historystack)。这个堆栈以Web浏览器中的历史记录工具为蓝本,为该应用程序提供后退...
jQuery的语法设计可以使开发者更加便捷,例如操作文档对象、选择DOM元素、制作动画效果、事件处理、使用Ajax以及其他功能。除此以外,jQuery提供API让开发者编写插件。其模块化的使用方式使开发者可以很轻松的开发出...
显示出当前时间及年份,还可以选择年份及月份和日期 Java编写的HTML浏览器 一个目标文件 摘要:Java源码,网络相关,浏览器 Java编写的HTML浏览器源代码,一个很简单甚至不算是浏览器的HTML浏览器,使用方法: 可直接...