আমি জানি যে গৃহীত উত্তরটি দুর্দান্ত তবে যে কেউ হুভারের সন্ধান করছেন এমন অনুভূতির জন্য আপনি কোনও মানচিত্রে হ্যান্ডেলটি ব্যবহার setTimeoutকরতে mouseoverএবং সেভ করতে পারবেন (আসুন সেট টাইমআউট হ্যান্ডেলের তালিকার আইডিকে বলতে পারেন)। উপর mouseoversetTimeout থেকে হ্যান্ডেল পরিষ্কার এবং মানচিত্র থেকে এটি মুছে
onMouseOver={() => this.onMouseOver(someId)}
onMouseOut={() => this.onMouseOut(someId)
এবং মানচিত্রটি নিম্নলিখিতভাবে প্রয়োগ করুন:
onMouseOver(listId: string) {
this.setState({
...
});
const handle = setTimeout(() => {
scrollPreviewToComponentId(listId);
}, 1000);
this.hoverHandleMap[listId] = handle;
}
onMouseOut(listId: string) {
this.setState({
...
});
const handle = this.hoverHandleMap[listId];
clearTimeout(handle);
delete this.hoverHandleMap[listId];
}
এবং মানচিত্রটি এর মতো,
hoverHandleMap: { [listId: string]: NodeJS.Timeout } = {};
আমি পছন্দ করি onMouseOverএবং onMouseOutকারণ এটি সমস্ত শিশুদের ক্ষেত্রেও প্রযোজ্য HTMLElement। এটির প্রয়োজন না হলে আপনি যথাক্রমে onMouseEnterএবং ব্যবহার করতে পারেন onMouseLeave।