Jquery UI 面板在单击时调整大小

发布于 2024-08-22 09:44:24 字数 775 浏览 7 评论 0原文

我正在使用 Jquery Ui 面板。([http://code. google.com/p/ist-ui-panel/][1]

加载应用程序时,一切都很好,例如可折叠,可拖动等。

但我想让面板在单击某些链接时可折叠。fo例如:

此代码将在表单加载时运行....

$('#myNews').panel({
    'collapsible' :true,
    'stackable':false,
 });

我想要制作“可折叠”的html

<div  class="panel" id="myNews" >
<h3>Poll</h3>
<div>Some content</div>
</div>

:单击某个链接时为假...这样

$('#click1').click(function() {
   $('#myNews').panel({
      'collapseType':'slide-right',
      'collapsible':false,
    });
});

代码运行时没有任何错误,但“#myNews”单击“#click1”链接时不会受到影响。

请需要一些帮助。

提前致谢

I am using Jquery Ui panels.([http://code.google.com/p/ist-ui-panel/][1])

While loading the application, everything is fine like collasible, draggable etc.

But i want to make the panel collapsible while clicking on some links.fo ex:

This code will run when the form is loading....

$('#myNews').panel({
    'collapsible' :true,
    'stackable':false,
 });

The html

<div  class="panel" id="myNews" >
<h3>Poll</h3>
<div>Some content</div>
</div>

I want to make 'collapsible' :false when clicking some link.... like this

$('#click1').click(function() {
   $('#myNews').panel({
      'collapseType':'slide-right',
      'collapsible':false,
    });
});

the code is running without any error, but the '#myNews' not getting affected when clicking the '#click1' link.

Need some help pls.

Thanks in advance

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

执手闯天涯 2024-08-29 09:44:24

我是 ist-ui-panel 背后的人,Jesse 是对的 - 现在你唯一的方法是使用“destroy”方法,有点像:

$(document).ready(function(){
    $('#click1').bind({
        'click': function() {
            $('#myNews').panel('destroy');
            $('#myNews').panel({
                'collapsible' :true,
                'collapseType':'slide-right',
                'stackable':true
            });
        }
    });


    $('#click2').bind({
        'click': function() {
            $('#myNews').panel('destroy');
            $('#myNews').panel({'collapsible': false});
        }
    });
});

注意,你应该在创建新面板之前明确销毁以前的面板。

I'm the one behind ist-ui-panel, and Jesse was right — by now the only way for you is to use 'destroy' method somewhat like:

$(document).ready(function(){
    $('#click1').bind({
        'click': function() {
            $('#myNews').panel('destroy');
            $('#myNews').panel({
                'collapsible' :true,
                'collapseType':'slide-right',
                'stackable':true
            });
        }
    });


    $('#click2').bind({
        'click': function() {
            $('#myNews').panel('destroy');
            $('#myNews').panel({'collapsible': false});
        }
    });
});

Notice, you should explicitly destroy previous panel before making a new one.

难以启齿的温柔 2024-08-29 09:44:24

如果您阅读该小部件的未压缩的源代码,那么似乎您所做的只是用于创建面板,而不是随后修改它们。

底层软件要么有问题,要么我不明白。因此,您必须找出一些错误,但您可以在该小部件上使用“销毁”方法来完全重置 div,然后然后再次将其设为面板 ,就像这样:

$('#myNews').panel("destroy");
$('#myNews').panel(...

正如我所说,它有问题,或者我不太明白 - 销毁调用会引发一个错误,您必须捕获该错误,并且随后创建新面板的调用确实会创建面板,但它们并不完全正确的。

If you read the uncompressed source code for that widget, it appears that what you are doing is only meant to be used to create panels, not to modify them afterward.

The underlying software is either buggy or I don't understand it. So you'll have to hunt down some bugs, but you can use the 'destroy' method on that widget to reset the div completely, and then make it a panel again, like so:

$('#myNews').panel("destroy");
$('#myNews').panel(...

As I said, it's buggy or I don't quite get it - there's an error raised by the destroy call which you have to catch, and subsequent calls to make new panels do make panels, but they aren't completely correct.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文