欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

jQuery防止click雙擊多次提交及傳遞動(dòng)態(tài)函數(shù)或多參數(shù)

 更新時(shí)間:2014年04月02日 16:48:19   作者:  
這篇文章主要介紹了jQuery防止click雙擊多次提交及傳遞動(dòng)態(tài)函數(shù)方法,需要的朋友可以參考下
今天是寫的是關(guān)于JQ的雙擊事件防止多次提交的問題,并且通過函數(shù)可以批量定義,通能性更強(qiáng)了,通過方法動(dòng)態(tài)綁定元素的事件。而且可以動(dòng)態(tài)傳遞函數(shù)名或者多參數(shù)等(本實(shí)例只傳遞函數(shù)名通過Eval調(diào)用)。

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

先看一下點(diǎn)擊事件的執(zhí)行順序:

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

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

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

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

<!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雙擊多次執(zhí)行及傳遞動(dòng)態(tài)函數(shù)方法</title>
<script type="text/javascript" src="http://www.86y.org/js/jquery.min.js"></script>
</head>

<body>
<div id="show">顯示測試結(jié)果:</div>
<div style="background:#f60;color:#fff;width:80px;padding:10px 20px;" id="div" onclick="ss1('DIV事件')">點(diǎn)擊我吧</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顯示測試結(jié)果:"+s);alert("a");};//div調(diào)用的方法
var ss2=function(s){$("#show").html("INPUT顯示測試結(jié)果:"+s);alert("b");};//input調(diào)用的方法

//通過方法動(dòng)態(tài)綁定元素的事件
std("#div","div");
std("#but1","button1");
</script>
</body>
</html>

相關(guān)文章

  • WEB前端開發(fā)都應(yīng)知道的jquery小技巧及jquery三個(gè)簡寫

    WEB前端開發(fā)都應(yīng)知道的jquery小技巧及jquery三個(gè)簡寫

    一個(gè)簡單技巧的集合,幫你提升 jQuery 技能,下面腳本之家小編給大家收集整理了web前端開發(fā)都應(yīng)知道的jquery小技巧,對(duì)jquery小技巧感興趣的朋友一起學(xué)習(xí)吧
    2015-11-11
  • JQuery中如何傳遞參數(shù)如click(),change()等具體實(shí)現(xiàn)

    JQuery中如何傳遞參數(shù)如click(),change()等具體實(shí)現(xiàn)

    有個(gè)需求讓兩個(gè)select中option相互轉(zhuǎn)換,這個(gè)作業(yè)就是給幾個(gè)按鈕添加click()事件接下來為大家介紹下如何在click(),change()傳遞參數(shù)
    2013-04-04
  • jquery 將disabled的元素置為enabled的三種方法

    jquery 將disabled的元素置為enabled的三種方法

    在jquery中可以通過jqueryObj.attr("disabled","disabled")將頁面中某個(gè)元素置為不可編輯或觸發(fā)狀態(tài),但是在jquery的API reference中并沒說明怎么將頁面置為disable的元素重新置為可觸發(fā)或可編輯的。
    2009-07-07
  • 為jQuery.Treeview添加右鍵菜單的實(shí)現(xiàn)代碼

    為jQuery.Treeview添加右鍵菜單的實(shí)現(xiàn)代碼

    jquery.treeview 數(shù)據(jù)通過JSON數(shù)據(jù)加載,有需要的朋友,可以通jquery的AJAX方法獲取相關(guān)的JSON數(shù)據(jù)。
    2010-10-10
  • 原生Aajax 和jQuery Ajax 寫法個(gè)人總結(jié)

    原生Aajax 和jQuery Ajax 寫法個(gè)人總結(jié)

    AJAX:即“Asynchronous Javascript And XML”(異步JavaScript和XML),是指一種創(chuàng)建交互式網(wǎng)頁應(yīng)用的網(wǎng)頁開發(fā)技術(shù)。本文重點(diǎn)給大家介紹原生Aajax 和jQuery Ajax 個(gè)人總結(jié),一起看看吧
    2017-03-03
  • 自己動(dòng)手手寫jQuery插件總結(jié)

    自己動(dòng)手手寫jQuery插件總結(jié)

    這篇文章主要介紹了自己動(dòng)手手寫jQuery插件總結(jié),本文是個(gè)人學(xué)習(xí)jQuery插件的總結(jié),實(shí)現(xiàn)了一個(gè)小功能的jQuery插件,需要的朋友可以參考下
    2015-01-01
  • jQuery實(shí)現(xiàn)簡易計(jì)算器功能

    jQuery實(shí)現(xiàn)簡易計(jì)算器功能

    這篇文章主要為大家詳細(xì)介紹了jQuery實(shí)現(xiàn)簡易計(jì)算器功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-07-07
  • jQuery html表格排序插件tablesorter使用方法詳解

    jQuery html表格排序插件tablesorter使用方法詳解

    這篇文章主要為大家詳細(xì)介紹了jQuery html表格排序插件tablesorter的使用方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-02-02
  • jQuery使用eraser.js插件實(shí)現(xiàn)擦除、刮刮卡效果的方法【附eraser.js下載】

    jQuery使用eraser.js插件實(shí)現(xiàn)擦除、刮刮卡效果的方法【附eraser.js下載】

    這篇文章主要介紹了jQuery使用eraser.js插件實(shí)現(xiàn)擦除、刮刮卡效果的方法,結(jié)合實(shí)例形式分析了jQuery.eraser.js插件的功能、使用方法與相關(guān)注意事項(xiàng),并附帶eraser.js插件源碼供讀者下載使用,需要的朋友可以參考下
    2017-04-04
  • Jquery在IE7下無法使用 $.ajax解決方法

    Jquery在IE7下無法使用 $.ajax解決方法

    今天在做系統(tǒng)測試的時(shí)候,原本用Jquery寫了一個(gè)動(dòng)態(tài)加載的樹形菜單,發(fā)現(xiàn)在IE7下無法加載數(shù)據(jù),(采用的是jquery1.3.2版本的$.ajax方法),上網(wǎng)查詢到原來是IE7的執(zhí)行ajax是用XMLHTTPRequest來聲明的,經(jīng)過對(duì)比果然如此;后采用以下的方法隨即解決了問題。
    2009-11-11

最新評(píng)論