1 / 15
文档名称:

实现基于 Ajax 的无限级菜单.doc

格式:doc   大小:147KB   页数:15页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

实现基于 Ajax 的无限级菜单.doc

上传人:316363517 2018/4/2 文件大小:147 KB

下载得到文件列表

实现基于 Ajax 的无限级菜单.doc

相关文档

文档介绍

文档介绍:实现基于 Ajax ,结婚是技术,离婚是算术。这年头女孩们都在争做小“腰”精,谁还稀罕小“腹”婆呀?高职不如高薪,高薪不如高寿,高寿不如高兴。现在到处都有这方面的教程,我重点说一下我自己搞的一个框架。
特点:
支持Form的无闪提交(方法有点笨)
支持MVC框架,即支持传统网页架构
多线程并发请求(要语言支持线程)
动态加载文件,只加载有用的!处理了Ajax框架臃肿的JS文件问题。
采用no table的全div + css布局
a. 获得XMLHTTPRequest对象,网上到处都找得到了,不多说:
function newXMLHttpRequest() {
var xmlreq = false;
if () {
xmlreq = new XMLHttpRequest();
} else if () {
try {
xmlreq = new ActiveXObject("");
} catch (e1) {
try {
xmlreq = new ActiveXObject("");
} catch (e2) {
}
}
}
return xmlreq;
}
这里提供一个通用的支持多浏览器的方法。

//这里用Bcandy作为方法名是为了感谢一个对我来说很重要的人,她一直在支持我
function Bcandy(Tid,url,parm,js) {
if(url == ""){
return;
}
//这是一个加载信息提示框,也可以不要!
("load"). = "visible";
//加载相应页面的JS文件
if(js != null){
//加载JS文件
LoadJS(js);
}
// 获取一个XMLHttpRequest实例
var req = newXMLHttpRequest();
// 设置用来从请求对象接收回调通知的句柄函数
var handlerFunction = getReadyStateHandler(req,Tid);
= handlerFunction;
// 第三个参数表示请求是异步的
("POST", url, true);
// 指示请求体包含form数据
("Content-Type",
"application/x-ded");
// 发送参数
(parm);
}
function getReadyStateHandler(req,Tid) {
// 返回一个监听XMLHttpRequest实例的匿名函数
return function () {
// 如果请求的状态是“完成”
if ( == 4) {
// 成功接收了服务器响应
if ( == 200) {
//下面一句是重点,这里显示了返回信息的内容部分,也可以加以修改。进行其它处理
(Tid).innerHTML = ;
(Tid). = "visible";
//这一句是实现加载信息提示框的隐藏,也可以不要。
("load"). = "hidden";
} else {
// 有HTTP问题发生
("load"). = "hidden";
alert("HTTP error: "+);
}
}
}
}
//动态加载JS文件
function LoadJS(file){
var head = ('HEAD').item(0);
var script = ('SCRIPT');
= file;
= "text/javascript";
(script)