O FF yapar iken iç içe geçmiş sıralanabilir JQuery liste IE'de çalışmıyor

3 Cevap php

JQuery ile ilgili sorunlar için bir kaynak olarak sık sık bu siteyi kullanarak yerken ben bir cevap bu zaman bulmak gibi olamaz. Yani burada benim ilk yazı olduğunu.

Işte gündüz MS Word belgelerini oluşturmak için bir informationsystem geliştiriyorum. Ben geliştiriyorum modüllerden biri içindekiler tablosu için bir varsayılan chapterselection tanımlayan ve verilen bölümlerde metinleri seçimi içindir. Bir kullanıcının yeni bölüm göndermek ve gerekirse, bir ebeveyn için childchapter olarak ekleyebilirsiniz, 'TOK benimsedikleri' ve bölüm (başka bir modülden) varsayılan metni bağlamak olarak bayrak olabilir.

Benim chapterlist MySQL tablodan recursively retreived ve bu gibi görünebilir:

<ul class="sortableChapterlist">
  <li>1</li>
  <li>2
    <ul class="sortableChapterlist">
      <li>2.1</li>
      <li>2.2</li>
      <li>2.3
        <ul class="sortableChapterlist">
          <li>2.3.1</li>
          <li>2.3.2</li>
        </ul>
      </li>
    </ul>
  </li>
</ul>

FireFox kodu bir cazibe ama IE gibi çalışır (7) bu kadar gibi görünmüyor. Ben sadece doğru mainchapters civarı sürüklemek mümkün değilim. Bir ALTBÖLÜM, bu seviye bulunuyor olursa olsun sürüklemeye çalışırken, correspondending mainchapter asla tüm bir çocuk ile yukarı kaldırır.

Bu benim görevi gerçekleştirmek için kullanıyorum jQuery kodu:

$(function(){
  $(".sortableChapterlist").sortable({
    opacity: 0.7,
    helper:  'clone',
    cursor:  'move'
  });

  $(".sortableChapterlist").selectable();
  $(".sortableChapterlist").disableSelection();
});

Herkes bu konuda bazı fikirler var mı? Ben IE tür jQuery sürüklenebilir / sıralanabilir işlemek için çalışıyor ile birlikte birden fazla sınıf referans "chapter_list" düşer tahmin ediyorum.

3 Cevap

Ben sadece çok ağacın hepsini daha kök <ul> eleman için sıralanabilir uygulayarak bunu düzeltmek inanıyorum. Bu test ettiğim tüm tarayıcılarda çalışır, ama ne yazık ki madde biraz "etrafında atlar" sürükledikten sonra eklenecektir hangi pozisyon olarak biraz daha az düzgün bir deneyim olur.

Esasen bu gibi olacaktır:

<ul id="sortableNestedList" class="sortableChapterlist">
  <li>1</li>
  <li>2
    <ul class="sortableChapterlist">
      <li>2.1</li>
      <li>2.2</li>
      <li>2.3
        <ul class="sortableChapterlist">
          <li>2.3.1</li>
          <li>2.3.2</li>
        </ul>
      </li>
    </ul>
  </li>
</ul>

$("#sortableNestedList").sortable({ ... });

Bu uzun bir atış olup, ancak örneğin, başka bir şey ile çizgi yerine çalışın tire. Bazı tarayıcılarda sorunlara neden kullanılır altını çiziyor.

Mozilla Geliştirici Merkezi: Underscores in class and ID names.

Ben gerçekten iyi çalışmak için buraya jQuery unexpected sortable behaviour üzerinde cevabını buldu.