javascript - 在文本末尾移动一个 div

标签 javascript html css

我有以下代码:

<li>This is 
  <div class="item1">item1</div>
  <div class="item3">item3</div>
  <div class="item2">item2</div>
a test</li>​

我想按如下方式排列 li <li>This is a test | div item1 | div item2 | div item3 </li>

不使用 javascript 是否可以做到这一点?只有CSS?如果没有,您能否提供一个 javascript 示例?

谢谢

最佳答案

http://jsfiddle.net/LceqM/

var li = document.getElementById("theli"),
    textNodes = [], first;

var elem = li.firstChild;

while( elem ) {
    if( elem.nodeType === 3 ) textNodes.push(elem);
    elem = elem.nextSibling;
}

if( textNodes.length ) {
    first = textNodes.shift();
    li.insertBefore( first, li.firstChild );

    while( textNodes.length ) {
        li.insertBefore( textNodes.pop(), first.nextSibling );   
    }
}

关于javascript - 在文本末尾移动一个 div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10971605/

相关文章:

javascript - 当我尝试在 HTML5 Canvas 中移动 PNG 图像时,它不稳定

javascript - 是什么触发 HTML 表单提交?

jquery - 所有浏览器都使用 HTML5 的带有 pur CSS3 的粘性页脚(高度未知)

asp.net - 如何从 c#.net 中的图表组件中删除 alt 样式?

javascript - 模型没有被插入 backbonejs 的集合

javascript - 如何在javascript中按状态隐藏按钮

html - 整个 div 作为链接 href 但不是输入文本

jquery - 如何在网页大小减小时删除填充

javascript - 有没有办法捕获 JavaScript 控制台输出以便我可以在其他地方引用它?

php - 编辑我的帐户导航菜单编辑地址链接