Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.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
jquery在激活另一个div时切换一个div_Jquery - Fatal编程技术网

jquery在激活另一个div时切换一个div

jquery在激活另一个div时切换一个div,jquery,Jquery,我真的坚持使用我的代码,它工作正常,除了一件事,我需要关闭任何打开的div,当我单击其他div打开时,以下是我的代码: function readFaq() { $('.find-faq-inner h3').prepend('<span id="spanfaq" class="faq-open"></span>'); $('.find-faq-inner h3').each(function () { var tis = $(this), state = f

我真的坚持使用我的代码,它工作正常,除了一件事,我需要关闭任何打开的div,当我单击其他div打开时,以下是我的代码:

function readFaq() {

$('.find-faq-inner h3').prepend('<span id="spanfaq" class="faq-open"></span>');

$('.find-faq-inner h3').each(function () {
    var tis = $(this), state = false;
    var answer = tis.next('div').hide().css('height', 'auto').slideUp();

    tis.click(function () {
        state = !state;
        answer.slideToggle(state);
        tis.toggleClass('active', state);

        if (state == true) {
            tis.find('#spanfaq').removeClass('faq-open');
            tis.find('#spanfaq').addClass('faq-close');
        }
        else {
            tis.find('#spanfaq').removeClass('faq-close');
            tis.find('#spanfaq').addClass('faq-open');
        }

    });
    });
}


<div class="find-faq-inner">
    <div class="text">
    <h3>FAQ1</h3>
    <div>
    text of faq
    </div>
    </div>
</div>
函数readFaq(){ $('.find faq internal h3')。前缀(''; $('.查找常见问题解答内部h3')。每个(函数(){ var tis=$(this),state=false; var answer=tis.next('div').hide().css('height','auto').slideUp(); 单击(函数(){ 状态=!状态; 答:滑动切换(状态); t.切换类别(“活动”,状态); if(state==true){ tis.find(“#spanfaq”).removeClass('faq-open'); tis.find('#spanfaq').addClass('faq-close'); } 否则{ tis.find(“#spanfaq”).removeClass('faq-close'); tis.find('#spanfaq').addClass('faq-open'); } }); }); } 常见问题1 常见问题文本 任何想法都会有帮助,谢谢

函数readFaq(){
function readFaq() {

$('.find-faq-inner h3').prepend('<span id="spanfaq" class="faq-open"></span>');

$('.find-faq-inner h3').each(function () {
    var tis = $(this), state = false, answer = tis.next('div').hide().css('height', 'auto').slideUp();
    tis.click(function () {
        state = !state;

       $('.find-faq-inner .text div').hide();// This will hide all the divs

        answer.slideToggle(state);
        tis.toggleClass('active', state);

        if (state == true) {
            tis.find('#spanfaq').removeClass('faq-open');
            tis.find('#spanfaq').addClass('faq-close');
        }
        else {
            tis.find('#spanfaq').removeClass('faq-close');
            tis.find('#spanfaq').addClass('faq-open');
        }

    });
    });
}
$('.find faq internal h3')。前缀(''; $('.查找常见问题解答内部h3')。每个(函数(){ var tis=$(this),state=false,answer=tis.next('div').hide().css('height','auto').slideUp(); 单击(函数(){ 状态=!状态; $('.find faq internal.text div').hide();//这将隐藏所有div 答:滑动切换(状态); t.切换类别(“活动”,状态); if(state==true){ tis.find(“#spanfaq”).removeClass('faq-open'); tis.find('#spanfaq').addClass('faq-close'); } 否则{ tis.find(“#spanfaq”).removeClass('faq-close'); tis.find('#spanfaq').addClass('faq-open'); } }); }); }
在上面的函数中,我添加了
$('.find faq internal.text div').hide()

这将隐藏
find faq internal
div中的所有div,并在代码中相应地使用它

为了更安全,您也可以使用

$('.find faq internal.text>div').hide()


它将只隐藏那些div,它们是类div的直接子类
text

,该函数在哪里调用?我们能得到更多的标记吗?这行“var answer=tis.next('div').hide().css('height','auto').slideUp();”一次做的事情太多了;你应该考虑把它拆开。