Javascript 将元素从div克隆到列表
我需要建立简单的标签菜单。问题是我必须产生这样的想法Javascript 将元素从div克隆到列表,javascript,jquery,css,tabs,insertafter,Javascript,Jquery,Css,Tabs,Insertafter,我需要建立简单的标签菜单。问题是我必须产生这样的想法 <ul id="menu"> <li class="First">First</li> <li class="Second">Second</li> <li class="Third">Third</li> </ul> 正如您所看到的,ID中存在很大的问题-重复:(我无法为脚本中的元素生成ID,因为菜单加载在header.phtml
<ul id="menu">
<li class="First">First</li>
<li class="Second">Second</li>
<li class="Third">Third</li>
</ul>
正如您所看到的,ID中存在很大的问题-重复:(我无法为脚本中的
元素生成ID,因为菜单加载在header.phtml文件中,而
内容加载在footer.phtml中,所以我不知道我需要多少ID(这就是为什么我无法使用php获取菜单项-忘记standart“get from db”的Zend…).也许我需要生成或只是得到一些“数组”
非常感谢您的帮助!您可以选择
中的所有li
。someclass
元素,克隆它们并添加到新创建的ul
,然后将其添加到正文中
$(文档).ready(函数()
{
var ul=$(“”,{id:“菜单”});
ul.append($('.someclass-li').clone());
$(“正文”)。附加(ul);
});
重复ID似乎是您的最小问题,列表元素不能是DIV的子元素,因此标记可能甚至不是您认为的那样,因为浏览器在大多数情况下都会尝试修复类似的东西。谈论重复ID…如果问题是li
的计数可能不同,为什么不设置一个类而不是身份证?
<div class="someclass">
<li class="First">First</li>
<p>text</p>
</div>
<div class="someclass">
<li class="Second">Second</li>
<p>text</p>
</div>
<div class="someclass">
<li class="Third">Third</li>
<p>text</p>
</div>
<div id="PutAfter">
<ul id="menu">
<li id="m">First</li>
<li id="m">Second</li>
<li id="m">Third</li>
</ul>
<div style="display:none">
<div class="someclass">
<li id="m">4</li>
<p>text</p>
</div>
<div class="someclass">
<li id="m">5</li>
<p>text</p>
</div>
<div class="someclass">
<li id="m">6</li>
<p>text</p>
</div>
</div>
$(document).ready(function(){
$('#4').clone().insertAfter($('#m3'));
$('#5').clone().insertAfter($('#4'));
$('#6').clone().insertAfter($('#5'));
});
$(document).ready(function()
{
var ul = $('<ul>', { id: "menu" });
ul.append($('.someclass li').clone());
$("body").append(ul);
});