打开/关闭菜单
Toggle preferences menu
打开/关闭个人菜单
未登录
未登录用户的IP地址会在进行任意编辑后公开展示。

MediaWiki:Gadget-collapsed.js

MediaWiki界面页面
Cirno.9讨论 | 贡献2023年2月10日 (五) 18:20的版本

注意:在发布之后,您可能需要清除浏览器缓存才能看到所作出的变更的影响。

  • Firefox或Safari:按住Shift的同时单击刷新,或按Ctrl-F5Ctrl-R(Mac为⌘-R
  • Google Chrome:Ctrl-Shift-R(Mac为⌘-Shift-R
  • Internet Explorer或Edge:按住Ctrl的同时单击刷新,或按Ctrl-F5
  • Opera:Ctrl-F5
function bindCollpase() {
    $('.collpased-container').each(function (i,v) {
        $(this).attr('id','collapsed-'+i)
        $(this).bind('click',function(){
        	toggleCollapse('#collapsed-'+i)
        })
    })
}
function openAllCollapse(){
    $('.collpased-container').each(function () {
        openCollapse($(this))
    })
}
function openCollapse(obj){
    var temp = $('<div class="collpased-temp"></div>')
    temp.html(obj.children('.collpased-content').html())
    temp.css('display','none')
    temp.appendTo(obj)
    var defHeight = $('.collpased-temp').height()
    var slideHeight = 0;
    var curHeight = obj.children('.collpased-content').height();
    var move = 3+obj.children('.collpased-head').height()/2
    console.log(curHeight)
    if(curHeight===slideHeight){
        obj.addClass('blue-border')
        obj.children('.collpased-a').css('display','none')
        // obj.children('.collpased-head').animate({
        //     top: '-='+move+'px',
        // }, "normal");
        obj.children('.collpased-content').animate({
            height: defHeight
        }, "normal");
        obj.children('.collpased-a').html('▲点击收起▲');
        obj.children('.collpased-a').fadeIn('fast')
    }
}
function closeAllCollapse(){
    $('.collpased-container').each(function () {
        closeCollapse($(this))
    })
}
function closeCollapse(obj){
    var temp = $('<div class="collpased-temp"></div>')
    temp.html(obj.children('.collpased-content').html())
    temp.css('display','none')
    temp.appendTo(obj)
    var defHeight = $('.collpased-temp').height()
    var slideHeight = 0;
    var curHeight = obj.children('.collpased-content').height();
    var move = 3+obj.children('.collpased-head').height()/2
    console.log(curHeight)
    if(curHeight!==slideHeight){
        obj.children('.collpased-a').css('display','none')
        obj.removeClass('blue-border')
        // obj.children('.collpased-head').animate({
        //     top: '+='+move+'px',
        //     border: '1px solid red'
        // }, "normal");
        obj.children('.collpased-content').animate({
            height: slideHeight
        }, "normal");
        obj.children('.collpased-a').html('▼点击展开▼');
        obj.children('.collpased-a').fadeIn('fast')
    }
}
function toggleCollapse(selector, openSpeed, closeSpeed){
    openSpeed = openSpeed !== undefined ? openSpeed : 'fast'
    closeSpeed = closeSpeed !== undefined ? closeSpeed : 'fast'
    var defaultHeight = $('.data-folded').height()
    var paddingHeight = 10
    selector = $(selector)
    var targetHeight = defaultHeight + paddingHeight + selector.children('.collpased-content').height()
    var currentHeight = selector.height()
    if(defaultHeight === currentHeight){
        selector.animate({
            height: targetHeight
        }, openSpeed,function () {
            selector.removeClass('data-folded')
            selector.css('height','auto')
        });

    }else {
        selector.animate({
            height: defaultHeight
        }, closeSpeed);
        selector.addClass('data-folded')
    }
}

function tollgeAllCo(){
    $('.collpased-a').each(function () {
        $(this).click()
    })
}
bindCollpase()