我试图自己解决这个问题,但遇到了一个小障碍。这是这个问题的后续。基本上,我需要从具有 .list 和 .combination 类的 3 个容器的链接末尾删除“index.html”,然后将它们添加到适当的容器中。我无法理解如何让所有东西协同工作。我收到了 url 变量的成功警报,但除此之外无法正常工作。不过,附加效果很好。
<script>$(document).ready(function () {
$('ul.list li a, ul.combination li a').each(function(){
var url = $(this).attr('href');
var n = url.lastIndexOf('/');
url.substring(0, n != -1 ? n : s.length);
});
$('ul.list.combination li').each(function() {
var element = $('.list li a[href="' + $(this).find('a').attr('href')
+ '"]');
if (element.siblings('ul').length == 0) {
element.after('<ul />');
}
element.next('ul').append($(this));
});
});
</script>
</head>
<body>
<ul class="list">
<li><a href="http://www.mysite.com/index.html">My Site</a></li>
<li><a href="http://www.google.com/index.html">Google</a></li>
<li><a href="http://www.yahoo.com/index.html">Yahoo</a></li>
<li><a href="http://www.cnn.com/index.html">CNN</a></li>
<li><a href="http://www.espn.com/index.html">ESPN</a></li>
</ul>
<ul class="combination">
<li><a href="http://www.mysite.com/index.html">My Site</a></li>
<li><a href="http://www.google.comindex.html">Google again</a></li>
</ul>
<ul class="combination">
<li><a href="http://www.mysite.com/index.html">My Site Too</a></li>
<li><a href="http://www.yahoo.comindex.html">Yahoo Redux</a></li>
</ul>
这是预期的输出:
<ul class="list">
<li><a href="http://www.mysite.com">My Site</a>
<ul><li><a href="http://www.mysite.com">My Site</a></li>
<li><a href="http://www.mysite.com">My Site Too</a></li></ul>
</li>
<li><a href="http://www.google.com">Google</a>
<ul><li><a href="http://www.google.com">Google again</a></li></ul>
</li>
<li><a href="http://www.yahoo.com">Yahoo</a>
<ul><li><a href="http://www.yahoo.com">Yahoo Redux</a></li></ul>
</li>
<li><a href="http://www.cnn.com">CNN</a></li>
<li><a href="http://www.espn.com">ESPN</a></li>
</ul>
<ul class="combination">
</ul>
<ul class="combination">
</ul>