刚才在写一个界面,其中为了考虑背景图片的缘故,所以没用Button而是用的a标签
在点击之后应该禁用掉a元素,禁用对于button比较容易,加一个disabled就可以了
但是对于a却没有太好的办法,总不能把href="",更何况我是走的onclick函数
所以百度了一下,然后看到有用遮罩实现的,源代码有bug,然后按照它的思路自己重写了一下
---------
下面粘一下代码吧,这个遮罩层实现法其实就是在当前元素外wrap一个层,层内增加一个z-index比较大的透明层,直接罩住原来的元素
/*遮罩层代码
作用:通过遮罩层的方式防止表单提交次数过多
*/
function MaskIt(obj){
var hoverdiv = '<div class="divMask" style="position: absolute; width: 100%; height: 100%; left: 0px; top: 0px; background: #fff; opacity: 0; filter: alpha(opacity=0);z-index:5;"></div>';
$(obj).wrap('<div class="position:relative;"></div>');
$(obj).before(hoverdiv);
$(obj).data("mask",true);
}
function UnMaskIt(obj){
if($(obj).data("mask")==true){
$(obj).parent().find(".divMask").remove();
$(obj).unwrap();
$(obj).data("mask",false);
}
$(obj).data("mask",false);
}
调用方法就很简单了,比如说现在有个<a id="test1">点我啊</a>
直接就可以:
MaskIt($('#test1'));
就可以加上遮罩了,解罩也是一样。
就这么多,匿了