给页面所有按钮点击添加loading效果问题

ks_xs_2012 2014-09-23 11:51:36
//关闭遮罩层
function closeWin() {
var bgObj = document.getElementById("divbgObj");
if (bgObj !== null)
document.body.removeChild(bgObj);
}
//遮罩层
function alertWin() {
var iWidth = document.documentElement.clientWidth;
var iHeight = document.documentElement.clientHeight;

var bgObj = document.createElement("div");
bgObj.setAttribute("id", "divbgObj");
bgObj.style.cssText = "position:absolute;left:0px;top:0px;width:" + iWidth + "px;height:" + Math.max(document.body.clientHeight, iHeight) + "px;filter:Alpha(Opacity=30);opacity:0.3;background-color:#000000;z-index:101;text-align:center; vertical-align:middle;";
var bgimg = document.createElement("img");
bgimg.setAttribute("src", "../../../vbimages/loading.gif");
bgObj.appendChild(bgimg);
document.body.appendChild(bgObj);

}
window.onload = function () {
//遍历页面所有 按钮添加loading效果,目前测试 只用一个
var target = document.getElementById("btn1");
var type = "click";
var func = alertWin;
if (target.addEventListener) {
target.addEventListener(type, func, false);
} else if (target.attachEvent) {
target.attachEvent("on" + type, func);
} else {
target["on" + type] = func;
}
}


上面点击页面按钮不存在问题,会弹出遮罩层 显示loading效果,但是该如何去在按钮执行完毕关闭这个遮罩层呢,如何判定按钮的原来的onclick事件执行完毕。
或者说我的思路是不是存在问题,请各位大大指点,在线等。。。
问题解决会追加分数
...全文
2112 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
XZowie 2014-09-23
  • 打赏
  • 举报
回复
在原click 的函數結束前加上關閉遮罩不行嗎
ks_xs_2012 2014-09-23
  • 打赏
  • 举报
回复
引用 2 楼 u012280941 的回复:
js是事件驅動 意思是你能在事件開始及結束加上程式 但你沒有辦法偵測另一個事件是否「執行中」 唯一的方法是你為事件添加變量,自行控管流程 先由規劃做起吧
該如何做 為事件結束 添加執行方法?跪求指點。
XZowie 2014-09-23
  • 打赏
  • 举报
回复
js是事件驅動 意思是你能在事件開始及結束加上程式 但你沒有辦法偵測另一個事件是否「執行中」 唯一的方法是你為事件添加變量,自行控管流程 先由規劃做起吧
ks_xs_2012 2014-09-23
  • 打赏
  • 举报
回复
难道白天没有人在
KK3K2005 2014-09-23
  • 打赏
  • 举报
回复
以后写测试 代码结构写的简单点 另外你的问题不能解决 是因为你没有 执行的过程 至少下面三个过程 启动(你只有这个) 执行(中) 执行(完毕) 你先把过程弄出来 过程又了 过程的结束自然有了
XZowie 2014-09-23
  • 打赏
  • 举报
回复
我重述一次你的問題 你要在原click 執行完,觸發「關閉遮罩」 但又不想修改原click 那你只能找原click 執行完有什麼「特徵」 然後 setInterval 間隔時間隨意設 16~1000 (ms) 一直測一直測直到「特徵」出現,關閉遮罩 既費工效率又低落,模擬觸發也就只得這樣做了
ks_xs_2012 2014-09-23
  • 打赏
  • 举报
回复
引用 4 楼 u012280941 的回复:
在原click 的函數結束前加上關閉遮罩不行嗎
現在如果不修改原來的onclick事件的代碼 能不能實現這個功能,如果可以 求代碼。謝謝。

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧