$方法中的DOM节点?

时间:2011-05-09 19:17:55

标签: jquery

如何在$ method中放置DOM节点?

$(this.loader).fadeIn(1000);

也尝试了

this.loader.fadeIn(1000);

编辑:

DOM.div()返回一个div元素对象

function Loader(){
    this.loader = null;
    this.threads = 0;

    this.cnstr = function(){
        if(this.threads == 0){
            this.loader = DOM.div(document.body);
            with(this.loader){
                className = 'loader';
                innerHTML = 'loader';
                style.opacity = 0;
                style.filter = 'alpha(opacity=0)';
            }
            $(this.loader).fadeIn(1000);

            elm_position_center(this.loader);
        }           
        this.threads++;
    };

    this.dstr = function(){
        this.threads--;

        if(this.threads <= 0){
            this.threads = 0;

            if(this.loader){
                DOM.rmv(this.loader);
            }
        }
    };
}
var Loader = new Loader();

如果我像这样反转动画它可以工作

this.loader = DOM.div(document.body);
            with(this.loader){
                className = 'loader';
                innerHTML = 'loader';
                style.opacity = 1;
                style.filter = 'alpha(opacity=100)';
            }
            $(this.loader).fadeOut(1000);

1 个答案:

答案 0 :(得分:1)

JQuery正在改变opacity,而filter仍然保持活跃状态​​,这使得div实际上永远不会出现在你身上。

我的建议是取消style.opacitystyle.filter,然后设置

style.display = 'none';