मैं स्क्रॉलमैजिक से setClassToggle() विधि का उपयोग कर रहा हूं। विचार यह है कि जब आप नीचे स्क्रॉल करते हैं तो एक ट्रिगर पास करते हैं, आप एक तत्व में एक सीएसएस वर्ग जोड़ सकते हैं। और यदि आप एक ट्रिगर पास स्क्रॉल करते हैं, तो यह वर्ग को तत्व से हटा देगा। जैसा कि यहां प्रलेखन में वर्णित है:

http://scrollmagic.io/docs/ScrollMagic.Scene.html#setClassToggle

उदा.

scene.setClassToggle("#my-elem", "myclass");

हालांकि, मैं नहीं चाहता कि जब आप ट्रिगर पास करते हैं तो कक्षा हटा दी जाती है। ट्रिगर पास करने के बाद मैं केवल कक्षा को जोड़ना चाहता हूं और पर्सिस्ट करना चाहता हूं। मैं इस तरह से व्यवहार करने के लिए स्क्रॉल मैजिक कैसे प्राप्त करूं? क्या यह संभव भी है?

1
John 29 जिंदा 2018, 17:30

2 जवाब

आपको गलत होने के लिए रिवर्स सेट करने की आवश्यकता है। इसका सेट डिफ़ॉल्ट रूप से सही हो सकता है

उल्टा: झूठा

http://scrollmagic.io/docs/ScrollMagic.Scene.html#reverse

1
Adam G 24 सितंबर 2018, 08:30

अपडेट करें

event.scrollDirection वह है जिसे आप ढूंढ रहे हैं।

var myScene = new ScrollMagic.Scene({
        ...
    })
    .on('start', function (event) {
        // only run on scroll down
        if(event.scrollDirection == 'FORWARD') {
            // do things here, like adding a class
        }
    })
    .addTo(controller);

मूल

ऐसा लगता है कि scene एंड इवेंट का यह प्रभाव है। निम्न स्निपेट एक वर्ग नाम जोड़ता है जो दृश्य के शुरू में पूरा होने के बाद ऊपर या नीचे स्क्रॉल करता रहता है। (यह उदाहरण आसानी से एक वर्ग जोड़ने के लिए jQuery का उपयोग करता है।)

var myScene = new ScrollMagic.Scene({
        ...
    })
    .on('end', function(event) {
        $('body').addClass('my-class');
    })
    .addTo(controller);
1
Luke 14 फरवरी 2020, 22:30