javascript - 从数组中获取 Id 并切换它

标签 javascript jquery angularjs loops dom

我正在尝试构建一个“自动切换”。我的计划是用循环来做。 array[i].onclick 到目前为止可以工作,但我无法进一步了解切换动画。

function setContentBox() {
  for (var i = 0; i < jArrayText.length; i++)
    document.getElementById(textWord[i]).onclick = function() {
      var x = document.getElementById(textWord[i] + "commentB");
      if (x.style.display === 'none') {
        x.style.display = 'block';
      } else {
        x.style.display = 'none';
      }
    };
}

$(document).ready(function(){
  setContentBox();
}); 
<div class="translaterBox">
  <span ng-repeat="text in textWords track by $index" id="{{text}}" class="container">
    {{text + " "}}
    <div id="{{text + 'commentB'}}" class="comment-box">
      <h4 class="title">{{text}}</h4>
      <div class="form-group">
        <textarea class="form-control" id="exampleTextarea" rows="3"></textarea>
      </div>
    </div>
  </span>
</div>

最佳答案

你的逻辑比它需要的要复杂很多。由于您已经在使用 jQuery,因此您可以简单地使用重复元素上的​​类来识别它们,然后在单击处理程序中使用 DOM 遍历来查找和修改相关元素。试试这个:

<div class="translaterBox">
  <span ng-repeat="text in textWords track by $index" id="{{text}}" class="container">
    {{text + " "}}
    <div id="{{text + 'commentB'}}" class="comment-box">
      <h4 class="title">{{text}}</h4>
      <div class="form-group">
        <textarea class="form-control" id="exampleTextarea" rows="3"></textarea>
      </div>
    </div>
  </span>
</div>
$(document).ready(function() {
  $('.container').click(function() {
    $(this).find('.comment-box').toggle();
  });
});

关于javascript - 从数组中获取 Id 并切换它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45734438/

相关文章:

javascript - 在关闭网页之前发送请求

javascript - 如何将嵌入/嵌套的 FormGroup 转换为 FormData

jquery - 在悬停/单击时设置背景内部 div

javascript - 如何通过trigger()选择特定值

javascript - jquery 搜索过滤器 - 如果搜索不匹配,选项将被隐藏,但 optgroup 仍显示,如何隐藏 optgroup

javascript - 如何根据用户区域设置使用自定义日期格式显示日期

android - 如何在 ionic 中打开键盘时以编程方式使屏幕滚动到顶部

javascript - 在 Javascript 中将 rgba 值转换为一个整数

javascript - cryptojs 和 golang 给出不同的 sha3 哈希值

javascript - 如何在 CSS 中将一个元素定位在另一个元素之上