Es gibt viele Schaltfl?chen auf der Benutzeroberfl?che. Das Eingabeaufforderungsfeld wird jetzt angezeigt, wenn die Maus hineinbewegt wird, und verschwindet, wenn die Maus herausgezogen wird. So ermitteln Sie, welche Schaltfl?che das Einzugs- und Entfernungsereignis verursacht.
Kann ich direkt basierend auf dem Ringmenü vonwheelmenu.js schreiben?
說實話我沒看懂你到底是想問什么,一般來講判斷目標(biāo)元素的方法常用的有兩種:
一種是給每個按鈕都綁定一個事件,這樣每個相應(yīng)事件對應(yīng)的元素都是相對的。
第二種是通過事件委托來實現(xiàn),通過e.target來確定具體是哪個按鈕觸發(fā)。
還有一種是像在canvas里這樣的情況下,由于無法對canvas里的每個對象是否觸發(fā)事件進(jìn)行直接獲取,你需要用觀察者模式來判斷鼠標(biāo)位置是否在某個對象內(nèi)部,至于檢測是否在多邊形內(nèi)部的方法可以用射線法。
一般的插件都會有callback函數(shù),假如有,你可以重構(gòu)callback
對每個btn委託click事件,從而判斷是那個btn
委托
把事件寫在一個容器里面,如p
<p id="pButtons">
<p>
//這里面放你的按鈕些
</p>
</p>
//寫移動事件,把事件寫在外層容器,不用考慮異步加載的問題
$('#pButtons').mousemove(function(e){
e=e||window.event;
//該對象為鼠標(biāo)移動的時候,拿到的節(jié)點
var target=e.target||e.srcElement;
//判斷該節(jié)點是否為按鈕,節(jié)點名為大寫
if(target.nodeName=='BUTTON'){
//$(target)就可以操作這個鼠標(biāo)所在的按鈕
}
});