2011-12-13 27 views
7

हैलो मैं इस कोड का उपयोग किसी अन्य php फ़ाइल से सामग्री लोड करने के लिए कर रहा हूं।jquery load को एनिमेट करने के लिए कैसे करें()

$(document).ready(function(){ 
      setInterval(function(){ 
           $('.live-stream ul').each(function(){ 
            $(this).load('tx.php'); 
         }); 
       }, 1000); 

     }); 

यह सही ढंग से काम करता है लेकिन मैं प्रत्येक "ली" में फीड को फीका करना चाहता हूं जब कोई नया रिकॉर्ड जोड़ा जाता है, कोई भी?

बात मैं करना चाहता हूँ है फेसबुक के लाइव उपयोगकर्ता कार्रवाई फ़ीड कि फेसबुक घर के अधिकार के शीर्ष पर

+0

आप सीएसएस में 'प्रदर्शन: कोई नहीं' या 'अस्पष्टता: 0' का उपयोग कर सकते हैं और एक नियमित jQuery एनीमेशन करते हैं। – FakeRainBrigand

उत्तर

0

आप इस एक कोशिश की है की तरह कुछ?

$(document).ready(function(){ 
    setInterval(function(){ 
     $('.live-stream ul').each(function(){ 
      $(this).load('tx.php').fadeIn('1000'); 
     }); 
    }, 1000); 
}); 

हममम, क्या यह एक

$(function(){ 
//Fade in all objects. 
var wrapper = $("live-stream ul"); 
$(wrapper).hide(); 

function fadeInAll(elem, fadeInTime, timeBetween) 
{ 
    for(i=0; i<elem.size(); i++) 
    { 
     $(elem[i]).delay(i*(timeBetween+fadeInTime)).fadeIn(fadeInTime);  
    } 
} 

fadeInAll($(wrapper), 1000, 500); 

}); 
+0

हाँ अभी भी कुछ भी नहीं हुआ –

+0

हम्म, मैंने अपना दूसरा कोड आजमाया है, जो मेरे लिए काम करता है, लेकिन मुझे नहीं पता कि यह भी –

1

के बारे में क्या अगर आप fadein विधि कॉल

$(this).load('tx.php').fadeIn(400); 
+0

के लिए काम करता है, कुछ भी नहीं बदलता –

2

कुछ इस तरह का प्रयास करें:

$(document).ready(function(){ 
    setInterval(function(){ 
     $('.live-stream ul').each(function(){ 
      $(this).hide().load('tx.php').fadeIn('500'); 
     }); 
    }, 1000); 

}); 

नोट के उपयोग fadeIn() और hide() ... यदि आपके पास पहले से <li> छिपा हुआ है तो आपको छिपाने की आवश्यकता नहीं है।

+0

मुझे यह कोशिश की गई थी लेकिन पूरे ली की हर 1 सेकंड –

+0

ऐसा इसलिए है क्योंकि आपने '.live-steam ul' selector का उपयोग किया था। आप प्रत्येक ली का चयन कर रहे हैं और एक ही समय में कर रहे हैं। क्या आप एक अलग प्रभाव की तलाश में थे? – sirmdawg

1

कॉल हैंडलर को लोड करते समय

$(document).ready(function(){ 
    setInterval(function(){ 
     $('.live-stream ul').each(function(){ 
       $(this).load('tx.php', function(){ 
         $('li').fadeIn("normal"); 
          }); 
       }); 
     }, 1000); 

    }); 
+0

काम नहीं कर रहा है: /। –

0

$ (इस) .fadeIn ("1000") निष्पादित किया जाएगा से पहले दिखाया गया है। सबसे पहले आप, fadein चयनित तत्व छुपाने के लिए, सामग्री लोड और फिर करने के लिए है इस तरह:

$(document).ready(function(){ 
    setInterval(function(){ 
     $('.live-stream ul').each(function(){ 
      $(this).hide().load('tx.php').fadeIn("1000"); 
     }); 
    }, 1000); 

}); 

या सीएसएस के साथ तत्वों को छिपाने:

display: none; 

संपादित करें: , कुछ इस तरह होना चाहिए, लेकिन यह परीक्षण नहीं किया है ...

$(document).ready(function(){ 
    setInterval(function(){ 
     var streamListElement = $(document.createElement("li")).load('tx.php').hide(); 
     $('.live-stream ul').append(streamListElement).find(":hidden").fadeIn("3000"); 
    }, 1000); 
}); 
+0

जब मैं ऐसा करता हूं तो यह सब ली आपके 1 इंटरमीवल() के कारण हर 1 सेकंड –

+0

@ रोनी चेस्टर लिनवुड थैट्स को झपकी दे रहा है। आप हर सेकेंड फ़ंक्शन को कॉल करते हैं;) आप वास्तव में क्या करना चाहते हैं? –

+0

मैं फेसबुक की लाइव यूजर एक्शन फीड की तरह कुछ करने की कोशिश कर रहा हूं जो फेसबुक होम के दाहिने शीर्ष पर –

0

सीएसएस display: none; का उपयोग कर कॉलबैक का उपयोग करें, लेकिन छिपाने ली fadein उसके बाद काम करना चाहिए।

$(document).ready(function(){ 
    setInterval(function(){ 
     $('.live-stream ul').each(function(){ 
       $(this).load('tx.php', function(){ 
         $(this).find('li').fadeIn(); 
          }); 
       }); 
     }, 1000); 

    }); 
+0

क्या केवल ली के पूरे उल के लिए सेट इंटरवल का उपयोग करने का कोई तरीका नहीं है? –

9

आपको इसे पहले छिपाना होगा।

$(this).hide().load("tx.php").fadeIn('500'); 
+0

शांत, यह पूरी तरह से काम करता है –

0

मुझे नहीं लगता कि आप सीधे लोड() पर एनीमेशन का उपयोग कर सकते हैं। लेकिन यहां दी गई चाल है:

$("#id").animate({opacity: 0},1000); 
$("#id").load(url); 
$("#id").animate({opacity: 1},1000); 

तत्व प्रदर्शित नहीं होता है, बस पारदर्शी हो जाता है। यह वही दिखता है।

संबंधित मुद्दे