2010-03-03 79 views
0

我在這裏有一個原型片段,我真的很想將它轉換爲Mootools。我如何將這段代碼轉換爲Mootools

document.observe('click', function(e, el) { 
    if (! e.target.descendantOf('calendar')) { 
     Effect.toggle('calendar', 'appear', {duration: 0.4}); 
    } 
}); 

該片段捕獲點擊次數,並且如果它在容器外點擊$('calendar')應該切換。

回答

1

您是否試圖在文檔中的任意位置捕獲點擊?也許你可以試試...

var calendar = $('calendar'); 
$$('body')[0].addEvent('click', function(e) { 
    if (!$(e.target).getParent('#calendar')) { 
    var myFx = new Fx.Tween(calendar, {duration: 400}); 
    myFx.set('display', 'block'); 
    } 
} 

我不知道你是如何切換的知名度,但Fx.Tween.set的工作方式可以讓你改變任何CSS屬性。你可能想看看http://mootools.net/docs/core/Fx/Fx.Tween其他的可能性。

另外,請注意,我使用$包裝了e.target。這是專門針對IE的。我在小標題「Mootools Events Targets」下寫了一篇關於這個here的帖子。

最後,我分析了$('calendar'),以便您不會每次搜索DOM。

+0

我一回家就會測試一下。看起來它會起作用。 – 2010-03-05 12:39:22