2016-03-31 23 views
0

listesindeki belirli bir öğeye ilerleyin. Web tabanlı uygulama üzerinde çalışıyorum (Javascript, Jquery, html, css kullanarak). Kanal sayısı ekranın yüksekliğinden daha büyük, her 10 kanala ulaştığında ya da yukarı ilerlediğinde kaydırma işlevini kullanmalıyım, bu amaçla scrollTop yöntemini kullanıyorum.Listedeki belirli bir öğeye ilerleyin ve listede

yüzden beni böyle sorumu basitleştirmek izin

Ben elemanların listesi var (biri bu soruya cevap eğer, benim asıl hedefe ulaşmak için bana yardımcı olur) ve i listede belirli bir öğeye kaydırabilirsiniz biliyorum ancak amacım, ilk kaydırmadan sonra 8. maddeye, seTimeout ve sonra listenin bir sonraki belirli öğesine (öğe 14.) geçmektir. İlk spesifik öğeye nasıl kaydolacağımı biliyorum ama Timeout'tan sonra bilmiyorum bir sonraki belirli öğeye nasıl kaydırırım (öğe 14.). Burada

çalışıyor birinci eleman kaydırma için kod edilir: i aşağıdaki kodu ekleyin çalıştık çalışır Yukarıdaki kod üzerinde

`http://jsfiddle.net/xY7tx/2339/` 

tabanı, amacım o zaman öğeye 8 ve ilerleyin ediyorum ilk

`http://jsfiddle.net/xY7tx/2338/` 

Teşekkür: 3 saniyelik zaman aşımı o zaman birileri ben burada arzu gibi çalışmaz ikinci şifre olduğunu nasıl çözebileceğinizi söyle lütfen, (ki olmaz) 14 öğeye ilerleyin ederim!

+1

http://stackoverflow.com/help/how-to-ask ayrıca kodunuzu satır içi ekleyin. – StefanS

cevap

2

dizisi boş durma aralığı ise Kullanmak zaman aşımının ardından Array

var container = $('div'), 
     scrollTo = new Array($('#row_8'),$("#row_10"),$("#row_14"),$("#row_2")); 

    container.scrollTop(
     scrollTo[0].offset().top - container.offset().top + container.scrollTop() 
    ); 

    scrollTo.shift(); 

    var refreshIntervalId = setInterval(function(){ 
    if(scrollTo.length!=0){ 
     container.scrollTop(
      scrollTo[0].offset().top - container.offset().top + container.scrollTop() 
    ); 
     scrollTo.shift(); 
    }else{ 
    clearInterval(refreshIntervalId); 
    } 
    },3000); 

DÜZENLEME

Ekleme çek ilk elemanını kaldırmak istediğiniz tüm pozisyonuyla diziyi oluşturabilir

Example

+0

Teşekkürler Atölyeniz için, asıl gönderiyi sorunla birlikte düzenledim, lütfen bir göz atın. – Jack

+0

Gönderinizi Kabul Edildi olarak geçici olarak kaldırdığım için özür dilerim çünkü sorunum hala devam ediyor ve yeni yanıtlar arıyorum veya belki de daha fazla bilgi verdikten sonra ya da siz bana yeni bir fikir verdiğiniz gibi güzel biriyle ya da çözüm! Saygılarımızla! – Jack

+0

neyse, hiç kimse bir süredir benim problemimi aramıyor gibi görünüyor, bu yüzden benim problemim için bir çözüm bulamamış olsam da, cevabını en iyisi olarak seçiyorum, Teşekkürler! – Jack