javascript读写XML实现广告轮换(兼容IE、FF)


Posted in Javascript onAugust 09, 2013

xml结构如下

<ad>
<tupian>http://www.seehaha.com/images/060901-150.100.2.gif</tupian>
<tupian>http://www.seehaha.com/xml/061009-300.100.jpg</tupian>
<dizhi>http://www.seehaha.com/plan/</dizhi>
<dizhi>http://www.seehaha.com/va.htm</dizhi>
</ad>
==
// JScript 文件    
var  Now  =  new  Date();    
var  Min  =  Now.getSeconds(); 
var  i;       
if((Min % 2) == 1)
//读取秒数,根据奇偶随机轮换,当然也可以改变此处算法增加xml节点数  
{ 
i = 1;
}  
else 
{  i = 0;  }
var url = "xml/ads.xml";
String.prototype.Trim = function() { 
return this.replace(/(^\s*)|(\s*$)/g, ""); 
}
var xmlDoc;
//判断是否为Firefox或IE 
var moz = (typeof document.implementation != 'undefined')   && (typeof document.implementation.createDocument != 'undefined');
var ie = (typeof window.ActiveXObject != 'undefined');
function importXML(file) { 
if (moz)  
{   
xmlDoc = document.implementation.createDocument("", "doc", null);
//创建FIREFOX下XML文档对象
}  
else if (ie)  
{   xmlDoc = new ActiveXObject("MSXML2.DOMDocument.3.0"); 
xmlDoc.async = false;
while( xmlDoc.readyState != 4) {};
//创建IE下XML文档对象
}  
xmlDoc.load(file);
}importXML(url);//载入xml
function updatetupiandizhi()
{
if (moz) 
{ 
var ad = xmlDoc.getElementsByTagName("ad")[0];
var tupian; 
var _tupian = ad.getElementsByTagName("tupian")[i].firstChild.nodeValue;
if (_tupian)   tupian = _tupian.Trim();   
//得到tupian,dizhi节点下的值   
var dizhi;   
var _dizhi=ad.getElementsByTagName("dizhi")[i].firstChild.nodeValue;  
if(_dizhi) dizhi = _dizhi.Trim();  
document.getElementById('tupian').href = tupian;  
document.getElementById('dizhi').src = dizhi;  
//实现轮换   
} else if (ie) 
{var src = xmlDoc.documentElement.selectNodes("tupian");
var href = xmlDoc.documentElement.selectNodes("dizhi");
//得到tupian,dizhi节点下的值
document.getElementById("dizhi").href = href(i).text;
document.getElementById("tupian").src = src(i).text;   
//实现轮换 
}}
Javascript 相关文章推荐
Javascript Select操作大集合
May 26 Javascript
原来Jquery.load的方法可以一直load下去
Mar 28 Javascript
JSON为什么那样红为什么要用json(另有洞天)
Dec 26 Javascript
JavaScript自定义日期格式化函数详细解析
Jan 14 Javascript
jQuery超酷平面式时钟效果代码分享
Mar 30 Javascript
[原创]JavaScript语法高亮插件highlight.js用法详解【附highlight.js本站下载】
Nov 01 Javascript
js实现文本上下来回滚动
Feb 03 Javascript
JavaScript 字符串数字左补位,右补位,取固定长度,截位扩展函数代码
Mar 25 Javascript
vue.js实例对象+组件树的详细介绍
Oct 20 Javascript
html+jQuery实现拖动滑块图片拼图验证码插件【移动端适用】
Sep 10 jQuery
原生js+css调节音量滑块
Jan 15 Javascript
vue 项目引入echarts 添加点击事件操作
Sep 09 Javascript
jQuery prev ~ siblings选择器使用介绍
Aug 09 #Javascript
jQuery怎么解析Json字符串(Json格式/Json对象)
Aug 09 #Javascript
jQuery查询数据返回object和字符串影响原因是什么
Aug 09 #Javascript
在服务端(Page.Write)调用自定义的JS方法详解
Aug 09 #Javascript
Jquery显示、隐藏元素以及添加删除样式
Aug 09 #Javascript
jquery实现文字由下到上循环滚动的实例代码
Aug 09 #Javascript
jquery 实现上下滚动效果示例代码
Aug 09 #Javascript
You might like
Classes and Objects in PHP5-面向对象编程 [1]
2006/10/09 PHP
有关 PHP 和 MySQL 时区的一点总结
2008/03/26 PHP
让PHP支持断点续传的源码
2010/05/16 PHP
浅析Yii2缓存的使用
2016/05/10 PHP
php foreach如何跳出两层循环(详解)
2016/11/05 PHP
jQuery 1.0.4 - New Wave Javascript(js源文件)
2007/01/15 Javascript
jQuery Mobile的loading对话框显示/隐藏方法分享
2013/11/26 Javascript
js的2种继承方式详解
2014/03/04 Javascript
javascript几个易错点记录
2014/11/26 Javascript
JavaScript中getUTCMinutes()方法的使用详解
2015/06/10 Javascript
JS实现仿新浪黄色经典滑动门效果代码
2015/09/27 Javascript
VsCode插件整理(小结)
2017/09/14 Javascript
JS动态添加元素及绑定事件造成程序重复执行解决
2017/12/07 Javascript
vue2中的keep-alive使用总结及注意事项
2017/12/21 Javascript
js定义类的方法示例【ES5与ES6】
2019/07/30 Javascript
vue实现日历表格(element-ui)
2020/09/24 Javascript
Python中List.index()方法的使用教程
2015/05/20 Python
Python实现的朴素贝叶斯分类器示例
2018/01/06 Python
python中ASCII码和字符的转换方法
2018/07/09 Python
opencv3/C++实现视频背景去除建模(BSM)
2019/12/11 Python
python判断变量是否为int、字符串、列表、元组、字典的方法详解
2020/02/13 Python
Python3 pickle对象串行化代码实例解析
2020/03/23 Python
html5的input的required使用中遇到的问题及解决方法
2018/04/24 HTML / CSS
HTML5实现移动端弹幕动画效果
2019/08/01 HTML / CSS
Styleonme中文网:韩国高档人气品牌
2017/06/21 全球购物
eHarmony英国:全球领先的认真恋爱约会平台之一
2020/11/16 全球购物
华为菲律宾官方网站:HUAWEI Philippines
2021/02/23 全球购物
JAVA的事件委托机制和垃圾回收机制
2014/09/07 面试题
英文版餐饮业求职信
2013/10/18 职场文书
公司部门司机岗位职责
2014/01/03 职场文书
车间统计员岗位职责
2014/01/05 职场文书
上班早退检讨书
2014/01/09 职场文书
北京离婚协议书范文2014
2014/09/29 职场文书
优秀班组事迹材料
2014/12/24 职场文书
Java Shutdown Hook场景使用及源码分析
2021/06/15 Java/Android
如何开启Apache,Nginx和IIS服务器的GZIP压缩功能
2022/04/29 Servers