【问题标题】:Jquery Divide and then Append to multiple divsJquery Divide然后追加到多个div
【发布时间】:2011-12-20 09:53:02
【问题描述】:

我有一个页面,其中包含由用户选择确定的不同数量的列。

为了争论,从三列更改为两列时,我想从所有三列中获取所有内容(子 div),然后在现在剩余的两列之间重新均匀(ish)分配它们。

这是我目前所拥有的。

// gather contents from source colums and store, store target divs as well
   var source = jQuery(".col").contents();
   var target = jQuery("#cols").contents();

// clear target divs (individually) now that their content is stored so we can append and re distribute source content
   jQuery(".col").html('');

// insert source into target
   jQuery(target).append(source);

#cols 是一个包含所有可见列的容器,而 .col 是这些单独的列中的每一个。因此,我成功地保存了每个单独列 (.col) 中的内容并将其附加到列容器 (#col) 中,然后将内容放入该容器的每个子项(每个列或 .col)中。

所以它工作正常,但它当然是复制每一列中的全部内容,我实际上想在每一列之间均匀地划分它。

我希望这是有道理的……有什么想法吗?

在此处查看示例http://jsfiddle.net/Cgdyq/ 单击屏幕选项以更改列设置,您会注意到内容随着所选列的列数而增加。

【问题讨论】:

  • 作为jsfiddle.net 演示的具体示例将非常有帮助。
  • jsfiddle.net/Cgdyq 点击“屏幕选项”然后更改列数,您会看到内容成倍增加。
  • jQuery("#cols").contents(); 将返回所有子节点并将source 中的每个节点附加到每个节点。如果要分割,就得遍历target中的节点,从source添加对应的节点。
  • 谢谢菲利克斯。我有一种感觉,我必须做这样的事情,只是不确定最好的方法。

标签: jquery append divide


【解决方案1】:

通过将源除以列数并拆分数组,然后将每个结果块放入每个列中,并将重复列(如果存在)放入最后一列,从而解决了问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-10-06
    • 2011-04-04
    • 2013-05-02
    • 1970-01-01
    • 1970-01-01
    • 2021-07-04
    • 2013-03-15
    相关资源
    最近更新 更多