select

Better select widgets in vanilla javascript.  https://p.ce9e.org/select/demo/
git clone https://git.ce9e.org/select.git

commit
99a3284d4ba701a170d5c2967e068dbcdd3a5c82
parent
5bae3b79f76ae87e513a020f10535bfc3bb4b782
Author
Tobias Bengfort <tobias.bengfort@posteo.de>
Date
2021-03-25 16:12
add selector

Diffstat

M select.js 17 +++++++++++++++--

1 files changed, 15 insertions, 2 deletions


diff --git a/select.js b/select.js

@@ -1,3 +1,5 @@
   -1     1 var chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
   -1     2 
    1     3 var KEYS = {
    2     4 	BACKSPACE: 8,
    3     5 	ENTER: 13,
@@ -8,7 +10,16 @@ var KEYS = {
    8    10 	DOWN: 40,
    9    11 };
   10    12 
   11    -1 class Select {
   -1    13 var randomString = function(length) {
   -1    14 	var result = [];
   -1    15 	for (var i = 0; i < length; i++) {
   -1    16 		var k = Math.floor(Math.random() * chars.length);
   -1    17 		result.push(chars[k]);
   -1    18 	}
   -1    19 	return result.join('');
   -1    20 };
   -1    21 
   -1    22 export class Select {
   12    23 	constructor(id, original) {
   13    24 		this.id = id;
   14    25 		this.original = original;
@@ -219,4 +230,6 @@ class Select {
  219   230 	}
  220   231 }
  221   232 
  222    -1 new Select('id_select', document.querySelector('select'));
   -1   233 Array.from(document.querySelectorAll('[data-select]')).forEach(el => {
   -1   234 	new Select(randomString(8), el);
   -1   235 });