جافاسكريبت - عند استخدام انتقالات/تحريكات CSS وما إلى ذلك، ما هي أفضل طريقة للعودة إلى jQuery إذا كان متصفح المستخدم لا يدعم تحريكات CSS؟
أبحث عن طريقة لاستخدام تحريكات CSS، ولكن إذا لم يكن متصفح المستخدم يدعم تحريكات CSS - أن أعود حينها لاستخدام jQuery للتحريك. هل هناك طريقة سهلة للقيام بذلك في jQuery؟ سيكون المكون الإضافي مقبولا، إذا كان مكونًا صغيرًا، لكنني أبحث حقًا عن طريقة للقيام بذلك في jQuery إذا كان ممكنًا. السبب الوحيد الذي يجعلني أرغب في استخدام تحريكات CSS هو بسبب انخفاض استخدام معالج الكمبيوتر بشكل كبير عند استخدام تحريكات CSS.
الإجابة رقم 1
إضافة jQuery animate المعززة تستخدم انتقالات CSS دون الحاجة لكتابة كود محدد للمتصفحات القادرة على الانتقال
البديل ليس مشجعًا جدًا: يمكنك إضافة مكتبة لاكتشاف الميزات مثل Modernizr ثم كتابة رمز محدد لكل حالة، مثل...
if (Modernizr.csstransitions) {
$("#yourdiv").css({
"-webkit-transform" : "translate(0, 10)",
"-o-transform" : "translate(0, 10)",
"-moz-transform" : "translate(0, 10)",
"-ms-transform" : "translate(0, 10)",
"transform" : "translate(0, 10)"
});
}
else {
//do jquery animate stuff
}
الإجابة رقم 2
لا يجب أن تهتم بذلك. الرسوم المتحركة ليست ضرورية. إذا قمت بالتحسين التدريجي، سيحصل كل مستخدم على أفضل تجربة يتيحها له متصفحه :).
إذا كنت تهتم بـ "قوة المعالج" إلى هذا الحد، فلن ترغب في تشغيل الرسوم المتحركة على IE على الإطلاق. خلاف ذلك، استخدم jQuery فقط، يبدو أنه الأنسب لاحتياجاتك الخاصة.
