最新版的jcrop接口只提供了 四種事件
專注于為中小企業(yè)提供網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)鐵嶺縣免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了1000+企業(yè)的穩(wěn)健成長(zhǎng),幫助中小企業(yè)通過(guò)網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。
crop.activate Active widget has changed
crop.update Widget dragging or resizing (frequent!)
crop.change Widget dragging or resizing finished
crop.remove Widget removed from stage
雙擊事件的話可以使用
jcp.listen("dblclick", (widget, e) = { console.log(e);})
來(lái)捕捉事件,但這個(gè)widget一直是undefined,沒(méi)法直接獲取到當(dāng)前widget,
但是可以獲取直接獲取當(dāng)前活動(dòng)的widget(stage.active)
位置就在active.pos
老版本的jcrop 直接在onDblClick綁定事件就好
和 pc端是一樣的? 不過(guò)移動(dòng)端 有幾個(gè) 特殊的事件
比如touch 事件
touchstart:手指觸摸到屏幕會(huì)觸發(fā)
touchmove:當(dāng)手指在屏幕上移動(dòng)時(shí),會(huì)觸發(fā)
touchend:當(dāng)手指離開(kāi)屏幕時(shí),會(huì)觸發(fā)
touchcancel:可由系統(tǒng)進(jìn)行的觸發(fā),比如手指觸摸屏幕的時(shí)候,突然alert了一下,或者系統(tǒng)中其他打斷了touch的行為,則可以觸發(fā)該事件
tap事件
tap: 手指碰一下屏幕會(huì)觸發(fā)
longTap: 手指長(zhǎng)按屏幕會(huì)觸發(fā)
singleTap:?手指碰一下屏幕會(huì)觸發(fā)
doubleTap:?手指雙擊屏幕會(huì)觸發(fā)
swipe事件
swipe:手指在屏幕上滑動(dòng)時(shí)會(huì)觸發(fā)
swipeLeft:手指在屏幕上向左滑動(dòng)時(shí)會(huì)觸發(fā)
swipeRight:手指在屏幕上向右滑動(dòng)時(shí)會(huì)觸發(fā)
swipeUp:手指在屏幕上向上滑動(dòng)時(shí)會(huì)觸發(fā)
swipeDown:手指在屏幕上向下滑動(dòng)時(shí)會(huì)觸發(fā)
這些事件不能用 $(xx).事件名() 去綁定 應(yīng)該
$(document).bind('touchmove',?function?(event)?{
console.log('手指在屏幕上滑動(dòng)了')
event.preventDefault();
});
解綁?用unbind
舉個(gè)例子,比如一個(gè)按鈕點(diǎn)擊的時(shí)候我想彈句話出來(lái)
那么這時(shí)就可以使用jquery綁定這個(gè)按鈕的click點(diǎn)擊事件
$("testBtn").click(function(){
alert("我想彈出的話");
});
此外還可以綁定雙擊事件、鼠標(biāo)滑過(guò)事件等等
你好,jquery可以用dblclick實(shí)現(xiàn)雙擊事件,如下:
$('div').dblclick(function(){
alert('雙擊彈出');
})
vs能不能實(shí)現(xiàn)不重要,網(wǎng)頁(yè)可以就行了
html直接寫:
button onclick="" ondoubleclick="" 按鈕/button
Jquery 中也可以實(shí)現(xiàn):
$('#btn').on('click',function(){
單擊方法
})
$('#btn').on('doubleclick',function(){
雙擊方法
})
jQuery綁定點(diǎn)擊事件可以使用其綁定事件函數(shù)
jquery中四個(gè)事件綁定方式(bind,live,delegate,on)
1、bind()????
簡(jiǎn)要描述
bind()向匹配元素添加一個(gè)或多個(gè)事件處理器。
使用方式
$(selector).bind(event,data,function)
event:必需項(xiàng);添加到元素的一個(gè)或多個(gè)事件,例如 click,dblclick等;
單事件處理:例如?$(selector).bind("click",data,function);
多事件處理:
1.利用空格分隔多事件,例如?$(selector).bind("click dbclick mouseout",data,function);
2.利用大括號(hào)靈活定義多事件,例如?$(selector).bind({event1:function, event2:function, ...})
3.空格相隔方式:綁定較為死板,不能給事件單獨(dú)綁定函數(shù),適合處理多個(gè)事件調(diào)用同一函數(shù)情況;
大括號(hào)替代方式:綁定較為靈活,可以給事件單獨(dú)
綁定函數(shù);
data:可選;需要傳遞的參數(shù);
function:必需;當(dāng)綁定事件發(fā)生時(shí),需要執(zhí)行的函數(shù);
適用Jquery版本
適用所有版本,但是根據(jù)官網(wǎng)解釋,自從jquery1.7版本以后bind()函數(shù)推薦用on()來(lái)代替。
2、live()? ?
簡(jiǎn)要描述
live()?向當(dāng)前或未來(lái)的匹配元素添加一個(gè)或多個(gè)事件處理器;
使用方式
$(selector).live(event,data,function)
event:必需項(xiàng);添加到元素的一個(gè)或多個(gè)事件,例如 click,dblclick等;
單事件處理:例如?$(selector).live("click",data,function);
多事件處理:1.利用空格分隔多事件,例如?$(selector).live("click dbclick mouseout",data,function);
2.利用大括號(hào)靈活定義多事件,例如?$(selector).live({event1:function, event2:function, ...})
3.空格相隔方式:綁定較為死板,不能給事件單獨(dú)綁定函數(shù),適合處理多個(gè)事件調(diào)用同一函數(shù)情況;
大括號(hào)替代方式:綁定較為靈活,可以給事件單獨(dú)綁定函數(shù);
data:可選;需要傳遞的參數(shù);
function:必需;當(dāng)綁定事件發(fā)生時(shí),需要執(zhí)行的函數(shù);
適用Jquery版本
jquery1.9版本以下支持,jquery1.9及其以上版本刪除了此方法,jquery1.9以上版本用on()方法來(lái)代替。
3、delegate()
簡(jiǎn)要描述
delegate()?為指定的元素(被選元素的子元素)添加一個(gè)或多個(gè)事件處理程序,并規(guī)定當(dāng)這些事件發(fā)生時(shí)運(yùn)行的函數(shù)。使用 delegate() 方法的事件處理程序適用于當(dāng)前或未來(lái)的元素(比如由腳本創(chuàng)建的新元素)。
使用方式
$(selector).delegate(childSelector,event,data,function)
childSelector:?必需項(xiàng);需要添加事件處理程序的元素,一般為selector的子元素;
event:必需項(xiàng);添加到元素的一個(gè)或多個(gè)事件,例如 click,dblclick等;
單事件處理:例如?$(selector).delegate(childselector,"click",data,function);
多事件處理:1.利用空格分隔多事件,例如?$(selector).delegate(childselector,"click?dbclick mouseout",data,function);
2.利用大括號(hào)靈活定義多事件,例如?$(selector).delegate(childselector,{event1:function, event2:function, ...})
3.空格相隔方式:綁定較為死板,不能給事件單獨(dú)綁定函數(shù),適合處理多個(gè)事件調(diào)用同一函數(shù)情況;
大括號(hào)替代方式:綁定較為靈活,可以給事件單獨(dú)綁定函數(shù);
data:可選;需要傳遞的參數(shù);
function:必需;當(dāng)綁定事件發(fā)生時(shí),需要執(zhí)行的函數(shù);
適用Jquery版本
jquery1.4.2及其以上版本;
4、on()
簡(jiǎn)要描述
on()?為指定的元素,添加一個(gè)或多個(gè)事件處理程序,并規(guī)定當(dāng)這些事件發(fā)生時(shí)運(yùn)行的函數(shù)。使用 on() 方法的事件處理程序適用于當(dāng)前或未來(lái)的元素(比如由腳本創(chuàng)建的新元素)。
使用方式
$(selector).on(event,childselector,data,function)
event:必需項(xiàng);添加到元素的一個(gè)或多個(gè)事件,例如 click,dblclick等;
單事件處理:例如?$(selector).on("click",childselector,data,function);
多事件處理:1.利用空格分隔多事件,例如?$(selector).on("click?dbclick mouseout",childseletor,data,function);
2.利用大括號(hào)靈活定義多事件,例如?$(selector).on({event1:function, event2:function, ...},childselector);
3.空格相隔方式:綁定較為死板,不能給事件單獨(dú)綁定函數(shù),適合處理多個(gè)事件調(diào)用同一函數(shù)情況;
大括號(hào)替代方式:綁定較為靈活,可以給事件單獨(dú)綁定函數(shù);
childSelector:?可選;需要添加事件處理程序的元素,一般為selector的子元素;
data:可選;需要傳遞的參數(shù);
function:必需;當(dāng)綁定事件發(fā)生時(shí),需要執(zhí)行的函數(shù);
適用Jquery版本
jquery1.7及其以上版本;jquery1.7版本出現(xiàn)之后用于替代bind(),live()綁定事件方式;
四種方式的異同和優(yōu)缺點(diǎn)
相同點(diǎn):
1.都支持單元素多事件的綁定;空格相隔方式或者大括號(hào)替代方式;
2.均是通過(guò)事件冒泡方式,將事件傳遞到document進(jìn)行事件的響應(yīng);
比較和聯(lián)系:
1.bind()函數(shù)只能針對(duì)已經(jīng)存在的元素進(jìn)行事件的設(shè)置;但是live(),on(),delegate()均支持未來(lái)新添加元素的事件設(shè)置;
2.bind()函數(shù)在jquery1.7版本以前比較受推崇,1.7版本出來(lái)之后,官方已經(jīng)不推薦用bind(),替代函數(shù)為on(),這也是1.7版本新添加的函數(shù),同樣,可以
用來(lái)代替live()函數(shù),live()函數(shù)在1.9版本已經(jīng)刪除;
3.live()函數(shù)和delegate()函數(shù)兩者類似,但是live()函數(shù)在執(zhí)行速度,靈活性和CSS選擇器支持方面較delegate()差些
4.bind()支持Jquery所有版本;live()支持jquery1.8-;delegate()支持jquery1.4.2+;on()支持jquery1.7+;
總結(jié)
如果項(xiàng)目中引用jquery版本為低版本,推薦用delegate(),高版本jquery可以使用on()來(lái)代替,以上僅為個(gè)人看法