簡體   English   中英

將錨點附加到包含具有相同href屬性的錨點的父項

[英]append anchor to a parent that contains anchor with same href attribute

我是SO和jQuery新手的新手。 我有從數據庫動態創建到3個不同無序列表的鏈接。 我正在嘗試將底部兩個列表中的每個列表項追加到新ul標記內的頂部列表中,這將成為頂部列表中每個列表項的錨點的同級對象。 我需要通過匹配href屬性來做到這一點。 我開始使用下面的腳本來看看是否可以排除網址的最后一部分,以便匹配href屬性。 任何幫助將不勝感激。

<script>$(document).ready(function () {
  var href = $('ul.list li:nth-child(1) a').attr("href");
  var n = href.lastIndexOf('/');
  alert(href.substring(0, n != -1 ? n : s.length));
});
</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">Google</a></li>
    <li><a href="http://www.yahoo.com">Yahoo</a></li>
    <li><a href="http://www.cnn.com">CNN</a></li>
    <li><a href="http://www.espn.com">ESPN</a></li>
    <li><a href="http://www.tsys.com">TSYS</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.com">To Index Page</a></li>
  </ul>
  <ul class="combination2">
    <li><a href="http://www.mysite.com/index.html">My Site Too</a></li>
    <li><a href="http://www.yahoo.com">Yahoo Redux</a></li>
  </ul>
</body>

像這樣的小提琴

的HTML

<ul class="list">
    <li><a href="http://www.mysite.com/index.html">My Site</a></li>
    <li><a href="http://www.google.com">Google</a></li>
    <li><a href="http://www.yahoo.com">Yahoo</a></li>
    <li><a href="http://www.cnn.com">CNN</a></li>
    <li><a href="http://www.espn.com">ESPN</a></li>
    <li><a href="http://www.tsys.com">TSYS</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.com">To Index Page</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.com">Yahoo Redux</a></li>
</ul>

Java腳本

$('ul.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));
})

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM