单击<时如何切换div类p>

时间:2013-01-12 03:14:08

标签: jquery html css class

我有这段代码:

<p class="faqsli" onclick="faqs1.className='faqsanswer';">
  چگونه ایمیل دهی سایت را محدود کنم؟
</p>


<div id="faqs1" class="faqshide">sometext</div> 我的css's!

.faqsli{
padding: 0px 16px 0px 0px;
background-repeat: no-repeat;
background-image: url(miniic_li.png);
background-position: right 5px;
}
.faqshide{
display:none;
}
.faqsanswer{
font-family:Tahoma, Geneva, sans-serif;
margin-right:25px;
}

它完美无缺。

如果有人点击<p> <div>班级更改并向用户显示,但我也希望在<div>点击<p>时隐藏{{1}}第二次。我该怎么办?

2 个答案:

答案 0 :(得分:3)

请改为尝试:

<p class="faqsli" onclick="document.getElementById('faqs1').className='faqsanswer';">

简单地引用div的ID不会得到对该div的引用。您可以使用document.getElementById()引用div,然后设置className

如果您正在使用jQuery,这可能会更有意义:

更新:适用于动态divp

HTML

<p class="faqsli" data-div="faqs1">
    <!-- text here -->
</p>

<div id="faqs1" class="faqshide">
    <!-- other text here -->
</div>

JS

$( document ).ready( function () {

    $( document ).on( 'click', '.faqsli', function () {

        var id = $( this ).attr( 'data-div' );
        $( '#' + id ).toggle();

    } );

} );

答案 1 :(得分:1)

在点击活动中使用toggleClass

<p class="faqsli" onclick="$('#faqs1').toggleClass('faqsanswer faqshide');">
  چگونه ایمیل دهی سایت را محدود کنم؟
</p>

demo