html 随机位置,javascript – 使用jQuery在随机位置附加内容?

这篇博客讨论了如何使用jQuery在HTML列表中随机位置插入新项目,而不是将其简单地添加到列表底部。通过选择现有列表项的一个随机索引并使用`.after()`或`.before()`方法,可以实现这一目标。同时,文章提到了在水平布局的列表中,新项目插入可能导致后续元素向右移动的问题,并探讨了可能的解决方案。
摘要由CSDN通过智能技术生成

我需要在页面中显示项目列表,并使用AJAX更新此页面.每次将新项目推送到客户端时,我希望它出现在我的ul列表中的随机位置.

HTML

  • Item #2
  • Item #2
  • Item #3
  • Item #4

CSS

.itemlist li{

width:100px;

height: 100px;

margin: 8px;

padding: 4px;

float: left;

background: #dddddd;

}

有关如何使用jquery在列表中的随机位置添加新项目的任何想法?

我知道我可以做一些像$(li_element).appendTo(“.itemlist”);但这会将它附加到列表的底部.

可能存在问题的另一个问题是每个li元素都浮动到左侧.因此,当在中间添加一个新元素时,该元素之后的所有内容都将向右推一个点.

我可以使用左边浮动的几个ul列表,并且li堆叠在彼此之下,所以当渲染新项目时,列表只是被推下来,但是如果我随机执行此操作,一些ul列表可能会比其他列表更长也看起来很奇怪.

解决方法:

var $lis = $(".itemlist li");

$lis.eq(Math.floor(Math.random()*$lis.length)).after(

/* your new content here */ );

.after()方法附加一个兄弟,因此从< li>列表中选择一个随机元素.项目和使用.after()就可以了.或.before().

附:关于新增项目将其他项目推向右侧,为什么这是一个问题?如果您的列表有水平布局,这是不正常的?

标签:jquery,javascript,random,appendto

来源: https://codeday.me/bug/20190610/1209303.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值