Closed vojir closed 9 years ago
přepínací "šipky" jsou u pole typu input cíleně skryty pomocí CSS (v prohlížečích je stejně uživatelé nepoužijí)
chybějící slovo za "prostřednictvím" má být, předpokládám, "inputu". Mám tedy použít Spinner?
má tam být input s nastaveným type=number (v některých případech už tam je...)
v původním komentáři to bylo napsané jako kousek kódu <input type="number">, což github skryl..
Marně hledám, kde jde tento input změnit. V kódu je pouze div.autocomplete, konkrétní label i input (pro test ho už vidím vedle slideru) je jen v testovacích souborech. Nenačítá se náhodou obsah daného odněkud jinud?
Daný input je vytvářen ve skriptu /web/js/lib/InterestMeasureSlider.js funkcí createInput (řádek 104...)
Uživatel má mít ve výsledku ve všech prohlížečích input type number (např. http://jqueryui.com/spinner/), nebo jen čistý input?
Má tam být jen čistý input s uvedeným type="number", ty šipky tam nechceme... (tj. cíleně chceme, aby se to chovalo jen jako input type="text")
Dobře, ale pak je lepší dát type="text" a jen kontrolovat zadávání čísel. Protože pokud dám type="number", zobrazí Opera, Chrome i FF při možnosti editovat šipky automaticky a je komplikovanější je skrýt. Jaký efekt tedy má mít type number? Čeho tím chceme docílit?
Šipky nezobrazí - jde do zakázat pomocí CSS. Důvodem je např. to, že mobilní prohlížeče (i na tabletech) v daném případě nabízejí jako výchozí klávesnici variantu pro zadání čísla.
Ještě jedno upřesnění - pro validaci v prohlížeči tam prosím vyplňte i parametry max a min
Narazil jsem při řešení úkolu na zvláštnost. Ve funkci calculateNumSteps se počítá počet kroků, momentálně řeším variantu s dataTypem double. Confidence má rozsah 0,01-1, takže je počet kroků 100 celkem logických. Support však má 0,001-1 a tam při násobení 100 dostáváme nesmyslný počet kroků - 10. Kroků by přitom mělo být 1000. Je u toho TODO, mám to nějak dořešit? Jaká byla původní myšlenka? Navíc při validaci hodnoty v inputu je u SUPP rovnou vraceno true, ačkoliv validní být nemusí (uživatel zadá třeba 1,1).
Dosáhl jsem požadované funkčnosti pro snad všechny IM kromě support. Pro IE ošetřuji zápis s desetinou čárkou převodem na tečku, FF a Chrome mají pro input number čárku dle lokalizace pevně danou, problém to ale při validaci nedělá. Pro celý web bylo nastaveno user-select na none pro všechny prohlížeče, nechal jsem to, jen jsem povolil (hodnota text) pro inputy number. Pro enum jsem přidal selectbox, přišel mi výrazně logičtější, než výpis povolených hodnot napravo a nucení uživatele psát.
Fce getRecordCount z třídy DataDescription je volána za pomocí obecných Getterů definovaných v GetterSetter na začátku třídy - je mi to již jasné. :)
K provedeným úpravám:
1) prosím o popis odlišnosti SUPPORT od ostatních měr - v kódu má vlastní chování při podmínkách a nechápu, v čem je jiná (např. od confidence) 2) použil jsem výpis, který tam byl z dřívějška pro "no slider" variantu, opravím, pokud se nedostanu k lokalizaci, dám napevno [ (předpokládám, že celosvětově odborníci používají tuto formu závorky) 3) myslím, že by to neměl být problém, ale kdy jindy fakticky nastane "opuštění" editačního pole, než při kliknutí na add? :)
ad 1) Aktuálně vycházejte z toho, že nijak odlišná není (dáme jí normálně v procentech, tj. interval 0-1) ad 2) Lokalizace v UI určitě je, tj. použijte ji ad 3) Např. při více editačních polích (zadávání více hodnot) při přechodu na další pole
hotovo
Upravte způsob zadávání hodnot měr zajímavosti - odstraňte "posuvníky" (z praxe víme, že sice vypadají hezky, ale nejsou příliš praktické). Hodnoty měr zajímavosti by měly být zadávány prostřednictvím inputu s typem number, přičemž u vstupního pole bude kontrolována maximální a minimální hodnota.
Bylo by vhodné, aby se možný rozsah hodnot zobrazoval vedle inputu - aby uživatel nemusel přemýšlet nad tím, jaké hodnoty se očekávají.
Mělo by zůstat zachováno předvyplnění výchozí hodnoty.