例子來說明這個問題可以在這裏找到:如何觸發動態生成的元素事件(在mootools的)
正如你可以看到只有第一個「添加」按鈕觸發事件。動態生成的按鈕沒有。這是可以理解的,因爲在頁面加載時這些元素還沒有被創建。
那麼,我需要改變什麼,以啓用動態生成的元素也註冊到一個事件?
感謝您的期待。
例子來說明這個問題可以在這裏找到:如何觸發動態生成的元素事件(在mootools的)
正如你可以看到只有第一個「添加」按鈕觸發事件。動態生成的按鈕沒有。這是可以理解的,因爲在頁面加載時這些元素還沒有被創建。
那麼,我需要改變什麼,以啓用動態生成的元素也註冊到一個事件?
感謝您的期待。
對implementing .live (from jQuery) in mootools的回答可能有些用處。
提到的答案很古老。如果可以的話,升級到MooTools 1.3而不是1.2。在MooTools更多,你會發現Element.Delegation包。該軟件包處理所有MooTools本機事件的委派,除了focus,blur,mouseenter和mouseleave外。
在這裏你會找到一個更新的JS小提琴:
感謝您的回答(並注意到),但不幸的是,升級目前不是一種選擇:(我認爲布拉德確實注意到我原來的jsfiddle被設置爲1.1,這就是爲什麼他指示我去那個解決方案。 – denormalizer 2010-12-13 23:59:18
很可能。 ) – 2010-12-14 00:04:02
啊哈,於是他回答了答案。不確定是否授予他答案:) j/k答案將被授予,一旦我得到它的工作。 – denormalizer 2010-12-14 00:07:08
有關使用Element.cloneEvents什麼?
入住此示例: http://jsfiddle.net/Byyu2/5/
它看起來有點難看,因爲你不能叫cloneEvents()直接在新行(cloneEvents()不recursivly工作),但它工作:-)
感謝您的回覆。有趣和有用,但如果我有幾個按鈕笨拙。我必須搜索每個按鈕,然後定位我想克隆事件的相應按鈕(如果我理解正確)。 – denormalizer 2010-12-21 04:21:47
我可以從整行中克隆事件嗎?我試過這個,但它似乎沒有工作... – denormalizer 2010-12-21 04:28:20
我沒有看到這樣做的方式,這就是我使用「醜陋」這個詞的原因;-)。 – CodeZombie 2010-12-21 13:56:41
嗯。所以mootools本身不會這樣做。解決方案(據我所知)建議我必須擴展Element對象... boo mootools :( – denormalizer 2010-12-13 23:45:40
1.2 does not。1.3 does。:-) – Savageman 2010-12-13 23:53:26
尚未得到它的工作。但似乎是答案。我已經把這個Element.implements()放在我的js的頂部,但它似乎沒有應用到Element obj。哼。現在挖掘。 – denormalizer 2010-12-14 00:22:19