मैं कैसे पता लगाने माउस स्क्रॉल बटन के नीचे का उपयोग कर घटना ReactJS?

0

सवाल

मैं कर रहा हूँ परेशानी हो रही है समझ कैसे पता लगाने के लिए "mouse3" / माउस स्क्रॉल बटन के नीचे का उपयोग कर घटना पर प्रतिक्रिया के onMouseDown घटना है ।

मैं का उपयोग कर रहा हूँ onMouseDown पर कुछ तत्व:

  <Menu.Item
    icon={<DashboardOutlined style={{ fontSize: '21px' }} />}
    onClick={onClickDash}
    onMouseDown={handleEvent}
  >
    Dashboard
  </Menu.Item>

और फिर handleEvent:

const handleEvent = (event) => {
  if (event.type === 'mousedown') {
    console.log('MOUSE DOWN', event);
  } else {
    console.log('MOUSE UP', event);
  }
};

समस्या है, मैं नहीं मिल सकता है एक तरह से पता लगाने के लिए स्क्रॉल माउस बटन नीचे विशेष रूप से. कैसे मैं पता लगा सकता है कि? सरकारी मोज़िला दस्तावेज़ प्रदान नहीं करते हैं, एक उदाहरण है या तो.

events javascript mouse reactjs
2021-11-23 19:42:22
1

सबसे अच्छा जवाब

-2

अस्वीकरण - लेखन के समय मैं ही था लक्ष्यीकरण क्रोम ब्राउज़र.

जब एक उपयोगकर्ता स्क्रॉल एक डोम स्क्रॉल घटना निकाल दिया जाता है, एक घटना में बनाया गया है जो कभी भी ब्राउज़र डिफ़ॉल्ट रूप से । प्रतिक्रिया यह है खुद के विधि, onScroll, कहा जा सकता है जो किसी भी घटक पर जब स्क्रॉल घटना निकाल दिया जाता है. इस का उपयोग कर onScroll विधि हम कर सकते हैं एक समारोह कॉल एक परिणाम के रूप में एक उपयोगकर्ता स्क्रॉल.

उदाहरण;

<SomeComponent onScroll={someMeothod} />

के रूप में किसी भी डोम घटना, एक घटना वस्तु के साथ बनाया जाता है गुण प्रदान कर सकते हैं कि उपयोगी जानकारी के बारे में घटना और तत्व ने घटना से संबंधित भी है. एक स्क्रॉल घटना निकाल दिया जाता है हर पिक्सेल के लिए एक उपयोगकर्ता स्क्रॉल. इस मामले में, हम कर रहे हैं के साथ संबंध की पहचान करने के लिए जब उपयोगकर्ता स्क्रॉल के अंत करने के लिए मूल तत्व युक्त हमारे सामग्री.

की गणना के लिए जब उपयोगकर्ता स्क्रॉल के अंत करने के लिए एक कंटेनर

जोड़ें एक onScroll विधि करने के लिए तत्व युक्त सामग्री है जो एक समारोह कॉल घटकों पर वर्ग:

<div className="content-container" onScroll={this.handleScroll}>
  // Your content
</div>

तो बनाने handleScroll समारोह को संभालने के लिए स्क्रॉल घटना:

class MyComponent extends React.Component {
  handleScroll = e => {
    let element = e.target
    if (element.scrollHeight - element.scrollTop === element.clientHeight) {
      // do something at end of scroll
    }
  }
  render() {
    return (
      <div className="content-container" onScroll={this.handleScroll}>
        // Your content
      </div>
    )
  }
}

चलो तोड़ने के नीचे क्या हो रहा है में handleScroll विधि बनाने के लिए, चीजों को थोड़ा स्पष्ट...

ई - इस से मेल खाती है, घटना ही है । यह एक वस्तु है कि है के द्वारा बनाई गई के साथ ब्राउज़र के गुणों से संबंधित करने के लिए स्क्रॉल घटना हम साथ काम कर रहे हैं.

चलो तत्व = ई.लक्ष्य - यह हमें की अनुमति देता है खोजने के लिए जो तत्व भेजा घटना का उपयोग (ई.लक्ष्य) को आवंटित करने के लिए चर जो हम में उपयोग कर सकते हैं कोड के बाकी.

अब हम (हमारे कोड) जानता है जो तत्व है scrolled जा रहा है और हम सौंपा है यह करने के लिए एक चर में हमारे तरीकों गुंजाइश है, हम का उपयोग कर सकते हैं के गुण है कि तत्व द्वारा दिए गए ब्राउज़र और गणना, तो उपयोगकर्ता स्क्रॉल करने के लिए अंत.

तत्व.scrollHeight - इस ऊंचाई पिक्सल में तत्वों की सामग्री, सहित सामग्री नहीं स्क्रीन पर दिखाई कारण के लिए सीएसएस अतिप्रवाह.

तत्व.scrollTop - ऊंचाई पिक्सल में है कि एक तत्व की सामग्री है, खड़ी scrolled.

तत्व.clientHeight - ऊंचाई में पिक्सल के स्क्रॉल के हिस्से के तत्व है ।

उपयोग उपरोक्त गुणों, हम गणना कर सकते हैं यदि उपयोगकर्ता स्क्रॉल करने के लिए नीचे तत्व की तुलना द्वारा नकारात्मक राशि के scrollHeight और scrollTop के लिए clientHeight. अगर वे कर रहे हैं वही कर रहे हैं, उपयोगकर्ता स्क्रॉल के नीचे करने के लिए तत्व । लपेटकर द्वारा इस में एक if बयान में हम कर सकते हैं, इसलिए सुनिश्चित करें कि हमारे समारोह के भीतर अगर बयान की गुंजाइश है, केवल चलाने के लिए जब उपयोगकर्ता स्क्रॉल के अंत करने के लिए div और हमारे if हालत से मुलाकात की है ।

2021-11-23 20:22:07

यह नहीं है कि मैं क्या कहा है, मैं के बारे में पूछा "onMouseDown" घटना के विषय के माउस स्क्रॉल बटन, नहीं पहिया / स्क्रॉल घटना है ।
Ericson Willians

अन्य भाषाओं में

यह पृष्ठ अन्य भाषाओं में है

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................

इस श्रेणी में लोकप्रिय

लोकप्रिय सवाल इस श्रेणी में