एचटीएमएल 5 INPUT type='number'
उपयोगकर्ता में क्लिक करता है ऊपर/नीचे तीरों कि इनपुट बॉक्स का हिस्सा हैं पर क्लिक करके मूल्य बदल सकते हैं। उपयोगकर्ता फोकस के लिए या इसकी सामग्री को संपादित करने के लिए बॉक्स में भी क्लिक कर सकता है।एचटीएमएल 5 इनपुट प्रकार = 'संख्या' - ध्यान और माउस मूल्य-परिवर्तन के बीच अंतर
click
ट्रिगर में इन दोनों गतिविधियों के बीच अंतर करने का कोई आसान तरीका है?
@cvsguimaraes उत्तर से, जो सिद्धांत को बेहतर ढंग से प्रदर्शित करता है।
अपनी पद्धति का उपयोग करके, मेरा पूरा (?) संस्करण है। उद्देश्य: सुनिश्चित करें कि नियमित रूप से change
डेटा बदलने के लिए +/- का उपयोग करते समय ट्रिगर्स को कॉल किया जाता है।
// input/mouseup triggers to call change from +/- mouse clicks
// want to wait 500ms before calling change in case successive clicks
render.inputCh = false;
render.inputCt = 0;
render.inputFn = function(e) {
render.inputCh = true;
}
render.mouseupFn = function(e) {
if(render.inputCh) {
render.inputCh = false;
render.inputCt++;
setTimeout(next, 500);
}
function next() {
render.inputCt--;
if(render.inputCt) return;
var change = document.createEvent("Event");
change.initEvent('change',true,true);
e.target.dispatchEvent(change);
}
}
// using input/mouseup triggers
document.getElementById('number').addListener('input',render.inputFn,true);
document.getElementById('number').addListener('mouseup',render.mouseuptFn,true);
// normal change trigger - will be called normally and via +/- mouse click
document.getElementById('number').addListener('change',changeFn,false);
क्रोम यह दोषरहित अब तक सिवाय इसके कि जब आप आइटम से फोकस हटाने change
ट्रिगर में फिर से शुरू होगा काम कर रहा है पर। मैंने इसे निम्न स्तर परिवर्तन ट्रिगर करके हल किया है, यदि पिछले परिवर्तन कॉल mouseup
से था तो प्रचार को रोकता है।
माउस {नीचे, ऊपर} प्रेस नहीं हैं और जारी की घटनाओं, बल्कि क्लिक ऊपर/नीचे की तुलना में? – fbstj
मैं जवाब नहीं दूंगा, क्योंकि मैंने इसे स्वयं से नहीं जानता था; लेकिन ऐसा लगता है कि "क्लिक का उपयोग न करें, इसके बजाय इनपुट का उपयोग करें" कहने के लिए एक वास्तविक ठोस तरीके की तरह लगता है। –
@ फ़ॉलिंगबलेट्स याह, लेकिन ऑनपूट इवेंट – cvsguimaraes