0

私はjquery-uitabs()を使用しています。Evertihngはうまくいきました。
次に、jqueryを介してDOMのタブを並べ替えました。

前:

<li id="L1">Tab 1</li>
<li id="L2">Tab 2</li>

後:

<li id="L2">Tab 2</li>
<li id="L1">Tab 1</li>

タブにカーソルを合わせると、content-divへの正しいリンクが表示されます。しかし、タブをクリックしても何も起こりません。

誰かが私のせいを知っていますか?

編集: li要素を並べ替えるための私のコード:

$(document).ready(function() {
  var elems = $('#tabsUl').children('li').remove();

  elems.sort(function(a,b){
    return parseInt($(a).attr("data-order")) > parseInt($(b).attr("data-order"));
  });

  $('#tabsUl').append(elems);
});​

そしてマークアップの例:

<ul id="tabsUl">
  <li data-order="4">Item 4</li>
  <li data-order="2">Item 2</li>
  <li data-order="3">Item 3</li>
  <li data-order="1">Item 1</li>
</ul>
4

1 に答える 1

1

.detach()の代わりに使用してください.remove()

var elems = $('#tabsUl').children('li').detach();

ドキュメンテーション:

.detach()

メソッドは、削除された要素に関連付けられたすべてのjQueryデータを保持することを除いて.detach()、と同じです。このメソッドは、削除された要素を後でDOMに再挿入する場合に役立ちます。.remove().detach()

于 2012-08-04T16:55:09.540 に答える