প্যাসিভ ইভেন্ট শ্রোতা হ'ল একটি উদীয়মান ওয়েব স্ট্যান্ডার্ড, ক্রোম 51 এ পাঠানো নতুন বৈশিষ্ট্য যা স্ক্রোল সম্পাদনাকে বড় সম্ভাবনা দেয়। ক্রোম রিলিজ নোটস।
এটি বিকাশকারীদের স্পর্শ এবং চাকা ইভেন্ট শ্রোতাদের উপর ব্লক করার জন্য স্ক্রোলিংয়ের প্রয়োজনীয়তা বাদ দিয়ে উন্নততর স্ক্রোল পারফরম্যান্সের জন্য অপ্ট-ইন করতে সক্ষম করে।
সমস্যা: ব্যয়বহুল জাভাস্ক্রিপ্ট চলমান থাকা সত্ত্বেও সহজেই চালানোর অনুমতি দেওয়ার জন্য সমস্ত আধুনিক ব্রাউজারের একটি থ্রেডেড স্ক্রোলিং বৈশিষ্ট্য রয়েছে, তবে এই অপ্টিমাইজেশনটি কোনও touchstart
এবং touchmove
হ্যান্ডলারের ফলাফলের জন্য অপেক্ষা করার প্রয়োজনে আংশিকভাবে পরাজিত হয়েছে , যা কল করে পুরোপুরি স্ক্রোলটিকে আটকাতে পারে preventDefault()
ইভেন্টে।
সমাধান: {passive: true}
স্পর্শ বা হুইল শ্রোতাকে প্যাসিভ হিসাবে চিহ্নিত করে, বিকাশকারী প্রতিশ্রুতি দিচ্ছেন যে হ্যান্ডলার preventDefault
স্ক্রোলিং অক্ষম করার জন্য কল করবেন না । This frees the browser up to respond to scrolling immediately without waiting for JavaScript, thus ensuring a reliably smooth scrolling experience for the user
।
document.addEventListener("touchstart", function(e) {
console.log(e.defaultPrevented); // will be false
e.preventDefault(); // does nothing since the listener is passive
console.log(e.defaultPrevented); // still false
}, Modernizr.passiveeventlisteners ? {passive: true} : false);
ডোম স্পেস , ডেমো ভিডিও , ব্যাখ্যাকারী ডক