Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/361.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 切换自动关闭_Javascript_Jquery - Fatal编程技术网

Javascript 切换自动关闭

Javascript 切换自动关闭,javascript,jquery,Javascript,Jquery,我有以下js代码: 此代码用于常见问题切换页面 它基本上与每个toogle代码一样工作,但我想在单击其他问题时添加自动关闭功能 隐藏上一个问题的内容,然后显示下一个问题。 有什么想法吗 if ( 'function' !== typeof(window[ 'vc_toggleBehaviour' ] ) ) { window.vc_toggleBehaviour = function ( $el ) { function event( e ) { e &&

我有以下js代码: 此代码用于常见问题切换页面

它基本上与每个toogle代码一样工作,但我想在单击其他问题时添加自动关闭功能

隐藏上一个问题的内容,然后显示下一个问题。 有什么想法吗

if ( 'function' !== typeof(window[ 'vc_toggleBehaviour' ] ) ) {
window.vc_toggleBehaviour = function ( $el ) {
    function event( e ) {
        e && e.preventDefault && e.preventDefault();
        var title = jQuery( this );
        var element = title.closest( '.vc_toggle' );
        var content = element.find( '.vc_toggle_content' );
        if ( element.hasClass( 'vc_toggle_active' ) ) {
            content.slideUp( {
                duration: 300,
                complete: function () {
                    element.removeClass( 'vc_toggle_active' );
                }
            } );
        } else {
            content.slideDown( {
                duration: 300,
                complete: function () {
                    element.addClass( 'vc_toggle_active' );
                }
            } );
        }
    }

    if ( $el ) {
        if ( $el.hasClass( 'vc_toggle_title' ) ) {
            $el.unbind( 'click' ).click( event );
        } else {
            $el.find( ".vc_toggle_title" ).unbind( 'click' ).click( event );
        }
    } else {
        jQuery( ".vc_toggle_title" ).unbind( 'click' ).on( 'click', event );
    }
}
}

无论何时单击任何问题,如果要隐藏所有活动问题,则无需担心当前活动的问题(如果有)

(如有疑问,请点击):

向上滑动任何当前活动的问题后,继续并显示单击的问题


注意。代码未经测试,因为您没有小提琴和html。希望你能理解这个概念。

是的,我理解这个概念,但我仍然遗漏了一些东西,因为我试图用你建议的更改来修改该文件,但仍然不起作用。。。这是我的一个问题的html代码。你知道吗?

这是文本。

很抱歉,它不起作用。我编写的代码需要与所有问题的单击事件相关联。如果您只是将其复制到现有代码的某个区域,那么它不太可能工作。底线是:只要在点击一个问题时关闭所有问题,这样你就不必跟踪哪个问题当前处于活动状态。
$('.vc_toggle_active').each(function(){
    $(this)slideUp( {
        duration: 300,
        complete: function () {
            $(this).removeClass( 'vc_toggle_active' );
        }
    });
});