看板 Web_Design 關於我們 聯絡資訊
小弟最近剛學JavaScript 碰到一個地方不太能理解他的意思 不過也不知道關鍵字要怎麼下 當我遇到像是 preventdefault clinetx pagex dataTransfer 前面都要加個e(自行取名) 傳入函數的值也要放個e(自行取名) 請問為甚麼要這樣做呢? 還是JavaScript規定就是要這樣寫 我只要照著寫就好了呢? 他有什麼關鍵字可以查詢學習的嗎? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 180.177.172.242 ※ 文章網址: https://www.ptt.cc/bbs/Web_Design/M.1445948917.A.27B.html
oToToT: 因為,那是要觸發事件才能取得的,所以你要用事件.XXXXX 10/27 20:47
powerwolf543: 請問觸發事件的意思是什麼? 10/27 20:51
pm2001: 建議你可以去找一本入門書慢慢看 10/27 20:59
oToToT: 就像你打RPG遊戲會有因為你做了某樣事,就冒出某種事件或 10/27 21:06
oToToT: 任務一樣,使用者在做網頁上操作時,也可能會觸發到javasc 10/27 21:06
oToToT: ript規定的事件 10/27 21:06
powerwolf543: 我有在上這方面的課程 10/27 21:28
powerwolf543: 只是老師的講法不太能理解 10/27 21:28
powerwolf543: 所以是有規定的特定event才需要這樣嗎? 10/27 21:29
powerwolf543: 那感覺就是要死背的東西 10/27 21:30
Hevak: 比方說你今天addEventListener("click", function (e) {}); 10/27 21:31
Hevak: 這就是把後面那個function綁定到click這個事件上面,click 10/27 21:32
Hevak: (點擊)下去就會執行後面那個function,點下去的同時會送cli 10/27 21:32
Hevak: ck這個事件給後面那個function。 10/27 21:32
Hevak: function (e)這裡的e名字可以隨便自訂,用來代稱傳進去func 10/27 21:33
Hevak: ion裏面的參數,在綁定事件的時候傳進去的第一個參數一定是 10/27 21:33
Hevak: 事件(event)本身,所以這時候方便識別,一般習慣把function 10/27 21:34
Hevak: (e)的e講成e或event,其中e也只是event的縮寫,這裡是看個 10/27 21:34
Hevak: 人喜好&看得懂優先,可以自訂。 10/27 21:34
Hevak: 至於function (e) {e.preventdefault();}的大括弧裏面的e就 10/27 21:35
Hevak: 當然一定要跟前面小括弧的e一樣名字了,因為大括弧裏面那個 10/27 21:35
Hevak: e是指你要取用傳給這個function的e(你在小括弧裏面先稱他e 10/27 21:35
Hevak: 了) 10/27 21:35
Hevak: 換句話說,你就是在function中執行傳進來的e的preventdefau 10/27 21:36
Hevak: lt這個方法 10/27 21:36
powerwolf543: 我比較不明白e是在傳遞什麼資料呢? 10/27 21:37
Hevak: e是事件本身的物件,他有像是preventdefault這類方法。 10/27 21:38
Hevak: 你對連結.addEventListener("click", function (e) {});的 10/27 21:40
Hevak: 話,你click那個連結的時候,會送一個click事件的物件進去 10/27 21:40
Hevak: 後面那個function 10/27 21:40
Hevak: 這個物件就像其他物件一樣會有些屬性和方法,像是呼叫他的 10/27 21:42
Hevak: preventdefault這個方法的話,就不會讓這個事件執行預設動 10/27 21:42
Hevak: 作。 10/27 21:42
感謝Hevak大大的詳細解說,我好像比較了解他的邏輯了,明天再做幾個例子看看,謝謝您! ※ 編輯: powerwolf543 (180.177.172.242), 10/27/2015 23:03:20