Chosen: مشكلة Scroll + hilight مع jQuery 2.2

تم إنشاؤها على ١٨ يناير ٢٠١٦  ·  17تعليقات  ·  مصدر: harvesthq/chosen

أهلا.

1.4.2 المختار لا يعمل مع jQuery 2.2. تحقق من مثالين:
https://jsfiddle.net/oLyfgt7m/1/
https://jsfiddle.net/oLyfgt7m/2/

في كلا المثالين ، حاول تحديد عنصر في منتصف القائمة:

  1. انقر فوق عنصر html المختار.
  2. قم بالتمرير بالماوس في وسط القائمة.
  3. حرك الماوس أسفل القائمة.

مع الإصدار 2.1.4 من jQuery ، تعمل جميعها بشكل جيد ، ولكن مع 2.2 لا يمكنني تحديد العنصر الصحيح ، انتقل إلى أسفل جميع المسارات المختارة.

يبدو وكأنه بعض طريقة هايلايت الداخلية علة.

هذه المشكلة ذات أولوية عالية بالنسبة لي ، لا يمكنني الترقية إلى jQuery 2.2. شكرا لك.

التعليق الأكثر فائدة

اهلا ياجماعة! يبدو أنني قد حللت هذه المشكلة
يوجد الكود التالي في السطر 855 في الإصدار غير المصغر:

high_top = this.result_highlight.position().top + this.search_results.scrollTop(); 

لقد قمت بإزالة scrollTop وساعدت:

high_top = this.result_highlight.position().top; 

ال 17 كومينتر

لقد لاحظت نفس المشكلة بالضبط مع jQuery 2.2.

نفس المشكلة مع jQuery 1.12.

اهلا ياجماعة! يبدو أنني قد حللت هذه المشكلة
يوجد الكود التالي في السطر 855 في الإصدار غير المصغر:

high_top = this.result_highlight.position().top + this.search_results.scrollTop(); 

لقد قمت بإزالة scrollTop وساعدت:

high_top = this.result_highlight.position().top; 

تحية للجميع !

لقد جربت الحل الخاص بك Alxcube ، ويبدو أنه يعمل!

عمل جيد ، شكرا جزيلا!

شكرا alxcube. يعمل بشكل مثالي!

نفس الخطأ هنا ، يبدو أنهم تغيروا كثيرًا مع scrollTop () في 2.2 و 1.12 ، وهو شيء يتعلق بالاختبارات على متصفحات مختلفة ..
يرجى تقديم إصلاح رسمي :) thx لهذا البرنامج المساعد الرائع!

tjschuck هل هناك أي فرصة لإصلاح هذا الخطأ قريبًا؟ أحتاج حقًا إلى الإصدار jQuery 2.2 في مشروعي ولا يمكنني الترحيل بسبب هذه المشكلة.

dmifedorenko هناك حل بديل منشور أعلاه.

babelshift حقا؟ :)
ماذا يمكنني أن أفعل بهذا الحل البديل؟ تصحيح نسختي المحلية المختارة؟ تم اختيار Fork على Github و rebase master في كل مرة بعد الإصدار الجديد المختار؟ هل تم اختبار هذا الحل البديل في جميع المتصفحات الشائعة؟

Chosen هي واحدة من حوالي 15 مكتبة js مستخدمة في مشروعنا. تفضل شركتنا استخدام الإصدارات الرسمية للمكتبات الصغيرة وليس التفرع أو التصحيح عندما. سأهاجر بشكل أفضل إلى select2 على سبيل المثال.

dmifedorenko الحلول هي إصلاح مؤقت حتى يصدر الريبو الرسمي الشيء الحقيقي. المختارة ليست مكتبة تم إصدارها بشكل متكرر. في الواقع ، كان آخر إصدار رئيسي منذ ما يقرب من عام. على هذا النحو ، لن تتم مطالبتك بإعادة التسمية وإعادة الاختبار لأي فترة زمنية طويلة.

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

babelshift أنا مع dmifedorenko لإصلاح رسمي ، لتجنب التصحيحات المخصصة في عملية بناء المؤسسة.

لا تزال نفس المشكلة مع 1.5.0 المختار!

eskimoe لم يتم تضمين الإصلاح في 1.5.0 لأنه لم يتم تقديم الإصلاح. هذه مجرد مشكلة وليست طلب سحب. إذا أرسل شخص ما طلب سحب مع إصلاح يعمل عبر جميع الإصدارات المدعومة من jQuery ، فسيتم دمجه وإدراجه في الإصدار التالي.

إنه خطأ jQuery في 1.12.0 / 2.2.0 ، والذي تم إصلاحه للتو من خلال الرجوع: jquery / jquery @ 49833f7795d665ff1d543c4f71f29fca95b567e9
لقد تسبب في إضافة scrollTop() إلى top ، ولهذا السبب يعمل الإصلاح المؤقت

أقوم بإغلاق المشكلة حيث تم إصلاح خطأ jQuery. لذلك سيكون الإصلاح هو التحديث إلى jQuery 2.2.1 عند إصداره

واجهت نفس المشكلة (أو ما شابهها) مع jquery 2.2.4 واختارت 1.6.2.
تم إصلاحه عن طريق إزالة الحدث DOMMouseScroll من القائمة القابلة للتمرير:

$('select').chosen();
$('.chosen-results').off( 'DOMMouseScroll' );

ما عليك سوى الانتقال إلى الرابط وتنزيل المرفق واستبدال ملف CHosen JS ، وهذا كل شيء تم حل مشكلات الجوال !!

https://realize.be/blog/mobile-support-chosen

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات

القضايا ذات الصلة

chenglou picture chenglou  ·  25تعليقات

trinzia picture trinzia  ·  19تعليقات

MB34 picture MB34  ·  22تعليقات

iamnader picture iamnader  ·  125تعليقات

SFPink picture SFPink  ·  14تعليقات