1、通過JS讀取XML文件,主要是判斷各個瀏覽器
// 加載xml文檔
var loadXML = function (xmlFile) {
var xmlDoc;
if (window.ActiveXObject) {
xmlDoc = new ActiveXObject('Microsoft.XMLDOM');//IE瀏覽器
xmlDoc.async = false;
xmlDoc.load(xmlFile);
}
else if (isFirefox=navigator.userAgent.indexOf("Firefox")>0) { //火狐瀏覽器
//else if (document.implementation && document.implementation.createDocument) {//這里主要是對谷歌瀏覽器進行處理
xmlDoc = document.implementation.createDocument('', '', null);
xmlDoc.load(xmlFile);
}
else{ //谷歌瀏覽器
var xmlhttp = new window.XMLHttpRequest();
xmlhttp.open("GET",xmlFile,false);
xmlhttp.send(null);
if(xmlhttp.readyState == 4){
xmlDoc = xmlhttp.responseXML.documentElement;
}
}
return xmlDoc;
}
// 首先對xml對象進行判斷
var checkXMLDocObj = function (xmlFile) {
var xmlDoc = loadXML(xmlFile);
if (xmlDoc == null) {
alert('您的瀏覽器不支持xml文件讀取,於是本頁面禁止您的操作,推薦使用IE5.0以上可以解決此問題!');
window.location.href = '../err.html';
}
return xmlDoc;
}
2、將讀取到的xml文件中的數據顯示到html文檔上
<script type="text/javascript" language="javascript">
var xmlDoc = checkXMLDocObj('../openClass.xml');//讀取到xml文件中的數據
var a = document.getElementsByTagName("a");//獲取所有的A標簽
$(document).ready(function () {
var nodes;
if($.browser.msie){ // 注意各個瀏覽器之間的區別
nodes = xmlDoc.getElementsByTagName('collage')[0].childNodes; //讀取XML文件中需要顯示的數據
}
else if (isFirefox=navigator.userAgent.indexOf("Firefox")>0){
nodes = xmlDoc.getElementsByTagName('collage')[0].children; //讀取XML文件中需要顯示的數據
}
else{
nodes = xmlDoc.getElementsByTagName('resource');
}
for (var i = 0; i < a.length; i++) {
if (a[i].parentNode.nodeName == "SPAN") {
for (var j = 0; j < nodes.length; j++) {
var resource = nodes[j];
var url = resource.getAttribute('url');
var href=$(a[i]).attr("href");
if (href == url) {
var count = resource.getAttribute('click');
var span = document.createElement("div");
var str = document.createTextNode("點擊率:" + count);
span.appendChild(str);
var div = a[i].parentNode.parentNode;
div.appendChild(span);
break;
}
}
}
}
});
$(function(){ //通過get請求,將點擊率增加
$(a).mousedown(function(){
var href = $(this).attr("href");
$.get("../receive.ashx",{url:href,rd:Math.random()}, function (msg) {
});
})
})
</script>