javascript - 使用 JavaScript 更改 div 顺序

标签 javascript html

我有这样的代码:

<div>
<div id="div1" class="flex">test 1</div>
<div id="div2" class="flex">test 2</div>
<div id="div3" class="flex">test 3</div>
<div id="div4" class="flex">test 4</div></div>

如何执行以下操作:当有人单击具有“flex”类的 div 时,该 div 会转到“列表”的顶部。例如,如果我单击 id 为“div3”的 div,则元素的顺序应为:div3、div1、div2、div4。

我不想附加父 div 或内部 HTML。

最佳答案

您需要在 div 之前添加一个 id 为 #first 的 div,然后使用 jQuery 的 insertAfter()

$(".flex").click(function() {
    $(this).insertAfter( "#first" );
});

<div>
    <div id="first"></div>
    <div id="div1" class="flex">test 1</div>
    <div id="div2" class="flex">test 2</div>
    <div id="div3" class="flex">test 3</div>
    <div id="div4" class="flex">test 4</div>
</div>

https://jsfiddle.net/joe_young/etgm865x/

关于javascript - 使用 JavaScript 更改 div 顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32232426/

相关文章:

javascript - 为什么我的 JavaScript 函数名称会冲突?

javascript - 使用 javascript 在提交时将文本添加到表单前

javascript - 我可以一起使用不同的 Promise 实现吗?

javascript - 如何使用netsuite中的suitescript提取XML值@attribute?

css - 如何使 iframe 中的所有网页在同一个选项卡中打开?

html - 图像左对齐不适用于 html 和 css 中的 li 标签

javascript - 如何隐藏/覆盖 iframe 的特定部分

javascript - 在 Ember 中将 Handlebars 插入 DOM

html - CSS 中的四边形梯形

javascript - 通过按钮重置表格中选中行的视觉效果