【问题标题】:Change Div Order With Jquery/Javascript (not in DOM)使用 Jquery/Javascript 更改 div 顺序(不在 DOM 中)
【发布时间】:2014-09-08 08:52:43
【问题描述】:

所以我熟悉 insertAfter() 和 insertBefore() 命令,但我们从 Javascript 文档中知道:

元素必须已经插入到文档中(你不能 如果它不在页面中,则在另一个元素中插入一个元素)。

所以我有一些代码在桌面视图中隐藏了一个 div,但在移动设备中显示,但是当它出现时我需要这个 div 出现在其他一些 div 之上,问题是同时我正在使用 jquery 插入其他一些 div,因此 insertBefore() 命令对我不起作用,有没有办法对页面中没有的项目执行此操作?

<script type="text/javascript">
$("div.tools").addClass("hide-desktop");
$("div.tools").addClass("hide-tablet");
$("#header").addClass("hide-desktop");
$("#header").addClass("hide-tablet");
$("div.mobile-menu").insertBefore("#new-logos");
$("body").prepend($('<div id="new-logo"  class="hide-mobile">'+
    '<div class="header-inner">'+
      '<div class="logo">'+
        '<h1><a href="logo"></a></h1>'+
 ' </div>'
));
</script>

<div class="main-content">
<div id="new-logos" class="hide-mobile">...</div>
<div class="tools hide-desktop hide-tablet"></div>
<div id="header" class="header hide-desktop hide-tablet"></div>
<div class="mobile-menu hide">
<ul class="links">
<li>
<a href="#">Log In</a>
</li>
<li>
<a href="#">Help</a>
</li>
</ul>
</div>

提前致谢

【问题讨论】:

  • 用这个添加你的 HTML...
  • 将此$("div.mobile-menu").insertBefore("#new-logos") 最后写入您的代码。

标签: javascript jquery


【解决方案1】:

从你的暗示看来工作正常,更多细节?

http://jsfiddle.net/Pa32R/

$('<div class="div4">4</div>').appendTo('body');
$('<div class="div5">5</div>').appendTo('body');

$('.div1').insertAfter('.div4');

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-01-16
    • 2021-05-25
    • 2013-02-26
    • 1970-01-01
    • 2015-08-28
    • 2014-10-31
    • 2012-12-10
    相关资源
    最近更新 更多