国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

jQuery防止click雙擊多次提交及傳遞動態函數或多參數

2019-11-20 20:52:45
字體:
來源:轉載
供稿:網友
今天是寫的是關于JQ的雙擊事件防止多次提交的問題,并且通過函數可以批量定義,通能性更強了,通過方法動態綁定元素的事件。而且可以動態傳遞函數名或者多參數等(本實例只傳遞函數名通過Eval調用)。

我們都知道在jQuery的事件綁定中,執行雙擊事件(dblclick)時能觸發兩次單擊事件(click)。即一個標簽元素(如div等),如果元素同時綁定了單擊事件(click)和雙擊事件(dblclick),那么執行單擊事件(click)時,不會觸發雙擊事件(dblclick), 執行雙擊事件(dblclick)時卻會觸發兩次單擊事件(click)。

先看一下點擊事件的執行順序:

單擊(click):mousedown,mouseout,click;
雙擊(dblclick):mousedown,mouseout,click , mousedown,mouseout,click,dblclick;

在雙擊事件(dblclick),觸發的兩次單擊事件(click)中,第一次的單擊事件(click)會被屏蔽掉,但第二次不會。也就是說雙擊事件(dblclick)會返回一次單擊事件(click)結果和一次雙擊事件(dblclick) 結果。而不是一次雙擊事件(dblclick)結果和兩次單擊事件結果(click)。

如此這般的話,只需消滅掉多余的一次單擊事件(click),這個問題就解決了。

效果如下圖:
http://images.cnitblog.com/i/554071/201404/010846579687197.png
源代碼如下:
復制代碼 代碼如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>jQuery防止click雙擊多次執行及傳遞動態函數方法</title>
<script type="text/javascript" src="http://www.86y.org/js/jquery.min.js"></script>
</head>

<body>
<div id="show">顯示測試結果:</div>
<div style="background:#f60;color:#fff;width:80px;padding:10px 20px;" id="div" onclick="ss1('DIV事件')">點擊我吧</div>

<input type="button" value="按鈕一" id="but1" onclick="ss2('INPUT事件')"/>
<script language="javascript">

function std (obj,vs){
var TimeFn = null;
var funs=$(obj).attr("onclick");
$(obj).click(function() {
clearTimeout(TimeFn);
TimeFn = setTimeout(function(){
eval(funs);
clearTimeout(TimeFn);
}, 400);
});

$(obj).dblclick(function() {
clearTimeout(TimeFn);
});
$(obj).removeAttr("onclick");
}

var ss1=function(s){$("#show").html("DIV顯示測試結果:"+s);alert("a");};//div調用的方法
var ss2=function(s){$("#show").html("INPUT顯示測試結果:"+s);alert("b");};//input調用的方法

//通過方法動態綁定元素的事件
std("#div","div");
std("#but1","button1");
</script>
</body>
</html>
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 溆浦县| 铜山县| 当阳市| 商丘市| 玉屏| 招远市| 张家界市| 盘山县| 威信县| 正定县| 冀州市| 靖江市| 和林格尔县| 图木舒克市| 进贤县| 抚顺县| 都兰县| 柳州市| 会昌县| 兴化市| 栖霞市| 惠来县| 德令哈市| 萨迦县| 额济纳旗| 广汉市| 南郑县| 尖扎县| 巴马| 达州市| 凤翔县| 若尔盖县| 黔西县| 涪陵区| 赤城县| 临朐县| 富顺县| 沅江市| 漯河市| 金溪县| 石楼县|