1

为什么这不能正常工作?

它应该在第一次单击时将输入宽度设置为 300,在正文单击时设置为 100,

如果有人知道 mootools 的元素点击功能,请告知

如果您知道如何将其设置回原始盒子尺寸,那将是很棒的

http://jsfiddle.net/V6bTN/10/

window.addEvent('load', function() {
    var box = $$('#searchfeed');
    var isopen = box.hasClass('open');

    box.addEvent('click', function myfunction(event) {

        box.addClass('open');
        box.morph({
            width: 300
        });

    });


    if (isopen) {
        $(document.body).addEvent('click', function(event) {
            box.morph({
                width: 100
            });
            box.removeClass('open');

        });
    }



});​
4

1 回答 1

3

这是一个简单的 outerClick 函数。

Element.Events.outerClick = {
    base : 'click',    
    condition : function(event){
        event.stopPropagation();
        return false;
    },
    onAdd : function(fn){
        this.getDocument().addEvent('click', fn);
    },
    onRemove : function(fn){
        this.getDocument().removeEvent('click', fn);
    }
};

利用:

el.addEvent('outerClick', function(){ this.destroy(); });
于 2012-09-14T15:09:07.513 回答