带参数的jQuery toggle()不起作用

时间:2011-10-05 17:21:15

标签: jquery toggle

我需要一些让我疯狂的问题的帮助。

我有以下代码:

$(".portlet-collapse").live({
    mousedown: function (e) {
        e.stopPropagation();
    },
    click: function () {
        if ($(this).css("background-position") != "-96px -288px") {
            $(this).css("background-position", "-96px -288px");
        }
        else {
            $(this).css("background-position", "-144px -288px");
        }

        $(this).parent().parent().children('.portlet-content:first').toggle();
    }
});

这很好用。

当我现在在切换功能中添加参数时,它不再切换。 我尝试过以下方法:

$(this).parent().parent().children('.portlet-content:first').toggle("fast");
$(this).parent().parent().children('.portlet-content:first').toggle("slow");
$(this).parent().parent().children('.portlet-content:first').toggle(3000);
$(this).parent().parent().children('.portlet-content:first').toggle("fast", function () { alert("toggle me"); });

每个选项都会制动切换。经过2个小时的搜索,我甚至试过了:

然后我试图切换到slideToggle()。但即使这样也行不通。

真正有趣的是,我对应用程序中的不同元素使用相同的功能和相同的原理,它可以在任何地方使用而没有问题。

我只是无法遵循逻辑,为什么它工作为空,但停止使用参数。

也许有人可以启发我。

提前谢谢

编辑:

好的,问题必须以某种方式与我要切换的元素相关。我有测试交换上面代码中的选定元素,我没有问题。

以下是我用来加载portlet的脚本:

function CreateWidget(columnid,tagid, title) {
$("<div class='portlet' id='" + tagid + "_portlet'>
    <div class='portlet-header' style='cursor:move;'>
        <span class='portlet-title'>" + title + "</span>
        <span class='portlet-remove' style='cursor:pointer;'></span>
        <span class='portlet-collapse' style='cursor:pointer;'></span>
        <span class='portlet-fullscreen' style='cursor:pointer;'></span>
    </div>
    <div class='portlet-content' id='" + tagid + "_content'>
    </div>
    </div>")
.appendTo("#" + columnid);
};

具有“portlet-content”类的div的内容稍后通过$ .ajax()

加载

有没有人可能会一直看到我忽略的东西?

0 个答案:

没有答案