javascript - jQuery div 可见性切换不起作用

标签 javascript jquery visibility slide

我有几个用于显示图形演示框的 div 和用于显示使用图形的示例代码的代码框。我想要做的是让代码框不可见,直到您单击演示框 - 这应该使代码框滑入 View 。 (See here to see how it looks)

使用 jQuery 这应该非常简单,因为我之前已经做过几次了,但由于某种原因,这次我似乎无法让它工作。

这是我的代码的缩短版本。

<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(document).ready(function()
{
  //hide the all of the element with class code-*
  //$(".code-left").hide();
  //$(".code-right").hide();
-->
  //toggle the component with the respective class
  $(".demobox-dark").click(function()
  {
    $(this).next(".code-left").slideToggle(600);
  });
  $(".demobox-light").click(function()
  {
    $(this).next(".code-right").slideToggle(600);
  });
});
</script>

<div class="demobox-light">
    <div class="color_blacktext"> </div>
    <p>Black text</p>
</div>
<div class="demobox-dark">
    <div class="color_whitetext"> </div>
    <p>White text</p>
</div>
<p>Code:</p>
<div class="code-left">
    <p class="code">TEXT</p>
</div>

有人能发现错误吗?因为我肯定不能。话又说回来,我绝对不是 JavaScript 专家。

最佳答案

如果页面上只有一个“代码左”和一个“代码右”,菲尔的答案会很有效。

如果您有多个这样的内容,并且正在捕获“demobox-dark”上的点击,则尝试获取下一个“code-left”,因为中间有一个段落两者,它不会真的是下一个。

您可以使用 nextAll 而不是 next 来执行此操作吗?例如,

$(this).nextAll(".code-left:first").slideToggle(600);

祝你好运!

关于javascript - jQuery div 可见性切换不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1302418/

相关文章:

javascript - 访问嵌入式 ruby​​ 中的 javascript 变量

Android View 不会变得可见

java - 当鼠标悬停在工具提示上时如何保持可见?

javascript - 调试使用 ES6 模块的 JavaScript 代码

javascript - 在 jsdom 中加载 Google Maps API

jquery globalcss IE 不透明度

javascript - 附加 DOM 对象时 jQuery 丢失 .on() 事件

javascript - jQuery 在容器中存在文本

jquery - 可见性:可见/隐藏div

javascript - Fabricjs 中的每个事件都会触发按钮单击事件