【问题标题】:Toggle to expand div (multiple)切换以展开 div(多个)
【发布时间】:2019-04-05 17:04:44
【问题描述】:

我目前使用这种 jQuery 方法来限制大小的 div 元素,但是一旦单击,就会展开以适合文本的长度:

document.getElementById("toggle").onclick = function(e) {
  e.preventDefault();
  var s = document.getElementById("expandable").style;
  if (s.height)
    s.height = "";
  else
    s.height = "auto";

}
#expandable {
  width: 20em;
  height: 60px;
  overflow: hidden;
  -ms-text-overflow: ellipsis;
  -o-text-overflow: ellipsis;
  text-overflow: ellipsis;
}
<pre><code><p id="expandable">Lorem ipsum dolor sit amet, consectetur adipisici elit, sed eiusmod tempor incidunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquid ex ea commodi consequat. Quis aute iure reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint obcaecat cupiditat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p><a id="toggle">more</a></code></pre>

http://jsfiddle.net/TbdgL/

但是,我在尝试获取所有要展开的 div 行列表时遇到了麻烦。我认为我必须对其进行调整,以便“可扩展”和“切换”都成为类,但我似乎无法让它发挥作用。我是新手!

任何帮助都会很棒。

【问题讨论】:

    标签: javascript toggle


    【解决方案1】:

    你是对的!编写此功能的一个好方法是使用 css 类!

    我已经用一个新的实现 here 分叉了你的 jsfiddle。

    基本上你可以检查元素是否已经有类expanded,如果该类存在于元素上,则删除它,否则,添加它!

    expanded 类只是将元素的height 设置为auto

    【讨论】:

      猜你喜欢
      • 2014-08-03
      • 2014-06-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-02-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多