سؤال

لقد قمت بإنشاء برنامج نصي JQuery بسيط مع تأثير التمرير على بعض الروابط.البرنامج النصي يعمل بشكل جيد كما ترون هنا: عينة الاختبار ...(يرجى اختباره على أي متصفح آخر غير IE)

ولكن إذا تحوم سريع على الروابط ستلاحظ أن أيقونات الصور لا تختفي بالشكل المطلوب.لقد حاولت كل شيء لإصلاح هذا ولكن لا يمكنني العثور على الحل المناسب.

السؤال الآن: كيف يمكنني التأكد من تطبيق تأثير تمرير mouseOut بعد انتهاء تأثير تمرير mouseOver بالكامل؟

هل كانت مفيدة؟

المحلول

تحتاج إلى تطبيق stop() للعناصر التي تم تحريكها.جرب هذا:

function hide_frame() {
   var hoveredLang = $(this).parent();              
   hoveredLang
      .find('.language-name').stop(true, true)
      .find('.download-img').stop(true, true)
      .find('.info-img').stop(true, true);
   //eccetera...

نصائح أخرى

نظرًا لأن تأثير الرسوم المتحركة الخاص بك له مدة حتى يكتمل، فأنت بحاجة إلى التعامل مع الحالات التي يحدث فيها التمرير/إلغاء التمرير أثناء الرسوم المتحركة.

أنا أستخدم JQuery stop وظيفة (http://docs.jquery.com/Effects/stop)

على سبيل المثال.

$("selector").stop(true,true).youreffect(.....);

جربها.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top