gpt4 book ai didi

javascript - 想要在单击 html 时显示特定的 div

转载 作者:行者123 更新时间:2023-11-28 16:02:55 25 4
gpt4 key购买 nike

假设我有三个类名为 p1、p2 和 p3 的段落以及三个类名为 div1、div2 和 div3 的 div。所有 div 都被隐藏。现在,当我单击 p1 类时,仅显示 div1,而当单击 p2 类时,div1 关闭并 div2 显示。

但在我的代码中,同时单击 p1p2p3 所有 div(div1, div2, div3) 显示。

CSS

.ask_btn_paragraph
{display : none;}

html

<p class="ask_btn"><span>&#43;</span>This is first paragraph</p>
<div class="ask_btn_paragraph">1stHello This issnknskjnskjn Hello This issnknskjnskjn Hello This issnknskjnskjn Hello This issnknskjnskjnHello This issnknskjnskjn Hello This issnknskjnskjn Hello This issnknskjnskjn Hello This issnknskjnskjn</div>
<p class="ask_btn"><b><span>&#43;</span>This is second paragraph</b></p>
<div class="ask_btn_paragraph">2ndHello This issnknskjnskjn Hello This issnknskjnskjn Hello This issnknskjnskjn Hello This issndnknskjnskjnHello This issnknskjnskjn Hello This issnknskjnskjn Hello This issnknskjnskjn Hello This issnknskjnskjn</div>
<p class="ask_btn"><b><span>&#43;</span>This is third paragraph</b></p>
<div class="ask_btn_paragraph">3rdHello This issnknskjnskjn Hello This issnknskjnskjn Hello This issnknskjnskjn Hello This issndnknskjnskjnHello This issnknskjnskjn Hello This issnknskjnskjn Hello This issnknskjnskjn Hello This issnknskjnskjn</div>

脚本

$('.ask_btn').click(function () {
$(".ask_btn_paragraph").toggle();
})

问题出在哪里?请有人帮助我....

最佳答案

因为 $(".ask_btn_paragraph") 将选择所有 p.ask_btn_paragraph 并隐藏它们。你应该

  • 使用.hide()隐藏所有'.ask_btn_paragraph'
  • 使用 next()
  • 获取点击元素的下一个元素
  • 然后使用 is(':visible')
  • 检查元素的可见性
  • 然后 show() 如果它是隐藏的。

$('.ask_btn').click(function(){
let x = $(this).next();
let hidden = !x.is(':visible')
$('.ask_btn_paragraph').hide();
if(hidden) x.show();
})
.ask_btn_paragraph
{display : none;}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<p class="ask_btn"><span>&#43;</span>This is first paragraph</p>
<div class="ask_btn_paragraph">1stHello This issnknskjnskjn Hello This issnknskjnskjn Hello This issnknskjnskjn Hello This issnknskjnskjnHello This issnknskjnskjn Hello This issnknskjnskjn Hello This issnknskjnskjn Hello This issnknskjnskjn</div>
<p class="ask_btn"><b><span>&#43;</span>This is second paragraph</b></p>
<div class="ask_btn_paragraph">2ndHello This issnknskjnskjn Hello This issnknskjnskjn Hello This issnknskjnskjn Hello This issndnknskjnskjnHello This issnknskjnskjn Hello This issnknskjnskjn Hello This issnknskjnskjn Hello This issnknskjnskjn</div>
<p class="ask_btn"><b><span>&#43;</span>This is third paragraph</b></p>
<div class="ask_btn_paragraph">3rdHello This issnknskjnskjn Hello This issnknskjnskjn Hello This issnknskjnskjn Hello This issndnknskjnskjnHello This issnknskjnskjn Hello This issnknskjnskjn Hello This issnknskjnskjn Hello This issnknskjnskjn</div>

关于javascript - 想要在单击 html 时显示特定的 div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55194929/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com