2013-06-03 4 views
5

मेरे पास एक ऐसी साइट है जहां मैं एक बड़े ग्राहक के लिए काम कर रहा हूं जिसमें धुंधला शहर की दृश्य पृष्ठभूमि छवि है, जिसके बाद पृष्ठभूमि में लगभग 20 या इतने तत्व नकली झटकेदार रोशनी हैं। जबकि मैं समझता हूं कि लुप्तप्राय का प्रदर्शन छेड़छाड़ कर सकता है मुझे लगा कि 1 9 तत्व बहुत खराब नहीं होंगे। मैं गलत था।कई (20 या तो) आइटम फीडइन/आउट एक साथ बड़े प्रदर्शन हिट का कारण बनता है। उपाय?

अभी खड़ा है के रूप में प्रत्येक तत्व रिकर्सिवली इस तरह अपने स्पार्कलिंग संभालता है:

function sparkle(flag, time) { 
    if (flag) { 
     setTimeout(function() { 
      self.fadeIn(getRandomInt(250,1000), function() { 
       sparkle(!flag, getRandomInt(250,1000)); 
      }); 
     }, time); 
    } else { 
     setTimeout(function() { 
      self.fadeOut(getRandomInt(250,1000), function() { 
       sparkle(!flag, getRandomInt(250,1000)); 
      }); 
     }, time 
    } 
} 

जब मैं इनमें से 20 को चलाने के सभी अलग दरों पर जा रहा प्रदर्शन हिट चरम है। समस्या यह है कि इस साइट को आईई 7 पर जाना है (हमारे पास इसके लिए एक कस्टम फीडिन/आउट फ़ंक्शन है) इसलिए मुझे कुछ विकल्प छोड़ दिए गए हैं।

मेरा तत्काल उत्तर मैं सीएसएस अस्पष्टता संक्रमण समर्थन की जांच करने जा रहा हूं और सीएसएस संक्रमणों में फीका को अंदर और बाहर परिवर्तित कर सकता हूं जहां उपलब्ध आधुनिक ब्राउज़र में बहुत तेज़ होना चाहिए (और उन्हें यानी 7 में चालू/बंद करना है कोई फीका नहीं)। मैं सोच रहा था कि मूल शैली को अनुकूलित करने के लिए कुछ रास्ता है या नहीं, इसे बहुत तेजी से निष्पादित करने के लिए। मैं मानता हूं कि प्रदर्शन हिट के लिए ज़िम्मेदार समय के साथ फीका दर निर्धारित करने के लिए प्रति तत्व अत्यधिक संख्या क्रंचिंग और कॉलबैक किया जा रहा है। क्या वैसे भी एक तत्व लुप्तप्राय कर रहा है कि शेष अपने ऑफसेट पर बंद हो सकते हैं (अगर यह समझ में आता है)?

अग्रिम धन्यवाद

+0

रिकर्सन को खत्म करने का प्रयास करें। – akonsu

+0

फीडइन और फीडऑट भिन्न है हालांकि यह थोड़ा सा मैला है –

+1

यह सामान्य रूप से कोई समस्या नहीं होनी चाहिए, क्या आप सुनिश्चित हैं कि टाइमआउट इन कार्यों को हजारों बार निष्पादित नहीं करते हैं? फ़ंक्शन के अंदर एक console.log रखें और देखें कि यह कितनी बार लॉग करता है, – adeneo

उत्तर

0

ऐसा लगता है कि आगे की जांच के बाद अपनी भी fadein करने के लिए या बाहर बल्कि कई बड़े पारदर्शी छवियों वर्तमान अवधि जा रहा है मंदी का कारण है जुड़ा हुआ नहीं। यह एक पूरी तरह से अलग समस्या है इसलिए मैं इसे एक नए प्रश्न के रूप में पोस्ट करूंगा। आप सभी की प्रतिक्रियाओं के लिए धन्यवाद।

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