首页 > 代码库 > 模拟循环单击事件实现layout中间panel全屏

模拟循环单击事件实现layout中间panel全屏

jquery提供了toggle方法 toggle() 方法切换元素的可见状态。

如果被选元素可见,则隐藏这些元素,如果被选元素隐藏,则显示这些元素。

语法

$(selector).toggle(speed,callback,switch)
下面的方法模拟了easyui layout中center panel全屏,当点击全屏按钮时,隐藏上,下左右四个panel,中间的panel自动伸开,占满满屏,再次点击时,东南西征北四个panel依次显示,中间的panel收缩
这里定义了一个全局变量i,当i 为奇数时第一次单击,当i为偶数时相当于再次单击。i等于100时清0.
如果用toggle方法,达不到效果,因为toggle方法默认就隐藏元素,隐藏元素,layout面板不会自动伸缩,就没有了全屏显示的效果。同时要为每一个元素添加toggle方法。用下面的方法,精简了代码。也方便理解。这里提供了一种简单的解决方案,
抛砖引玉吧。
var i=1;
function makeMax() {
    i=i+1;
    if(i%2)
    {

        $(‘body‘).layout(‘expand‘, ‘west‘);
        $(‘body‘).layout(‘expand‘, ‘north‘);
        $(‘body‘).layout(‘expand‘, ‘south‘);
        $(‘body‘).layout(‘expand‘, ‘east‘);
        i=i==100?0:i;
    }
    else
    {

        $(‘body‘).layout(‘collapse‘, ‘west‘);
        $(‘body‘).layout(‘collapse‘, ‘north‘);
        $(‘body‘).layout(‘collapse‘, ‘south‘);
        $(‘body‘).layout(‘collapse‘, ‘east‘);
    }
}