找到一个元素,然后在下一个元素之后插入内容
Find an element, then insert content after the next
在过去的几个小时里,我一直在努力处理这段代码。希望你能帮我:)我努力实现的目标:
- 查找元素
- 在(1)中elment后面的元素后面插入html
这是我的HTML:
<div class="paragraph" data-template="1" data-id="1"></div>
<div class="icons"></div>
我想在元素后面插入"icons"类,所以我尝试:
$(data).insertAfter('.paragraph').find('[data-id="'+appendAfter+'"]').next('.icons');
其中$(data)是HTML字符串
这是失败的。如果我删除next()函数,它会在图标之前插入,但这不是我想要的:
$(data).insertAfter('.paragraph').find('[data-id="'+appendAfter+'"]');
因此,查找元素是可行的,但不能跳过之后的元素然后插入。
干杯,Robert
因为您正在寻找next
,所以跳过div.paragraph
会像这样关闭
<div class="paragraph" data-template="1" data-id="1"> ..something.. </div>
<div class="icons">
如果是这样的话,只更正你的代码
$(data).insertAfter($('.paragraph[data-id="'+appendAfter+'"]').next('.icons'));
或者如果div.paragraph
是div.icons
的父级,则表示不像上面那样关闭,将其作为
$(data).insertAfter($('.paragraph[data-id="'+appendAfter+'"]').find('.icons'));
试试这个:
如果.paragraph
元素是.icons
的父元素,那么next()
将不起作用,因为它会查找同级元素。您需要使用find()
来获取子元素:
$('.paragraph[data-id="' + appendAfter + '"]').find('.icons').after(data);
我想你想要的是:
$(".paragraph").next().after(data)
您可能需要考虑什么是数据——是html还是元素?
这就是你的意思吗?
$('.paragraph').next('.icons').after(data);
相关文章:
- 滚动到容器中的下一个元素-几乎到了
- 使用CSS或js,使用动态选择器选择任意li的下一个元素
- 真正的下一个具有特定类的元素
- jQuery转盘下一个元素没有滑入
- 获取锚点的下一个元素
- j查询 如何选择当前元素之后的下一个元素
- 获取下一个或上一个隐藏元素的高度,以设置父元素的高度.jquery.
- 如何在 JavaScript 中获取下一个元素和更新
- jQuery网站的键盘快捷键,焦点使用左键和右键转到上一个或下一个元素
- 如果上一个元素为空,则隐藏下一个元素
- 使用表时,Jquery Next()未正确突出显示下一个元素
- 如何将所有下一个元素包装到
- 获取活动元素之后的下一个元素
- jQuery-在每个复选框中获取下一个元素
- 找不到下一个元素
- 正在从元素中获取下一个className
- 如何获取下一个元素's值-jquery
- 如何选择 $(this) 之后的下一个元素
- 专注于下一个元素
- Jquery 选择元素下一个/上一个/最近