আমি জানি যে গৃহীত উত্তরটি দুর্দান্ত তবে যে কেউ হুভারের সন্ধান করছেন এমন অনুভূতির জন্য আপনি কোনও মানচিত্রে হ্যান্ডেলটি ব্যবহার setTimeout
করতে mouseover
এবং সেভ করতে পারবেন (আসুন সেট টাইমআউট হ্যান্ডেলের তালিকার আইডিকে বলতে পারেন)। উপর mouseover
setTimeout থেকে হ্যান্ডেল পরিষ্কার এবং মানচিত্র থেকে এটি মুছে
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
।