diff --git a/emoji.js b/emoji.js index a5dec46..2169b1f 100644 --- a/emoji.js +++ b/emoji.js @@ -1,5 +1,6 @@ export default class Emoji { constructor({ input, callback, onSubmit, onShow, onHide }) { + this.event = { onShow, onHide, onSubmit } let emoji = '๐Ÿ˜€ ๐Ÿ˜ƒ ๐Ÿ˜„ ๐Ÿ˜ ๐Ÿ˜† ๐Ÿ˜… ๐Ÿ˜‚ ๐Ÿคฃ ๐Ÿฅฒ โ˜บ๏ธ ๐Ÿ˜Š ๐Ÿ˜‡ ๐Ÿ™‚ ๐Ÿ™ƒ ๐Ÿ˜‰ ๐Ÿ˜Œ ๐Ÿ˜ ๐Ÿฅฐ ๐Ÿ˜˜ ๐Ÿ˜— ๐Ÿ˜™ ๐Ÿ˜š ๐Ÿ˜‹ ๐Ÿ˜› ๐Ÿ˜ ๐Ÿ˜œ ๐Ÿคช ๐Ÿคจ ๐Ÿง ๐Ÿค“ ๐Ÿ˜Ž ๐Ÿฅธ ๐Ÿคฉ ๐Ÿฅณ ๐Ÿ˜ ๐Ÿ˜’ ๐Ÿ˜ž ๐Ÿ˜” ๐Ÿ˜Ÿ ๐Ÿ˜• ๐Ÿ™ โ˜น๏ธ ๐Ÿ˜ฃ ๐Ÿ˜– ๐Ÿ˜ซ ๐Ÿ˜ฉ ๐Ÿฅบ ๐Ÿ˜ข ๐Ÿ˜ญ ๐Ÿ˜ค ๐Ÿ˜  ๐Ÿ˜ก ๐Ÿคฌ ๐Ÿคฏ ๐Ÿ˜ณ ๐Ÿฅต ๐Ÿฅถ ๐Ÿ˜ฑ ๐Ÿ˜จ ๐Ÿ˜ฐ ๐Ÿ˜ฅ ๐Ÿ˜“ ๐Ÿค— ๐Ÿค” ๐Ÿคญ ๐Ÿคซ ๐Ÿคฅ ๐Ÿ˜ถ ๐Ÿ˜ ๐Ÿ˜‘ ๐Ÿ˜ฌ ๐Ÿ™„ ๐Ÿ˜ฏ ๐Ÿ˜ฆ ๐Ÿ˜ง ๐Ÿ˜ฎ ๐Ÿ˜ฒ ๐Ÿฅฑ ๐Ÿ˜ด ๐Ÿคค ๐Ÿ˜ช ๐Ÿ˜ต ๐Ÿค ๐Ÿฅด ๐Ÿคข ๐Ÿคฎ ๐Ÿคง ๐Ÿ˜ท ๐Ÿค’ ๐Ÿค• ๐Ÿค‘ ๐Ÿค  ๐Ÿ˜ˆ ๐Ÿ‘ฟ ๐Ÿ‘น ๐Ÿ‘บ ๐Ÿคก ๐Ÿ’ฉ ๐Ÿ‘ป ๐Ÿ’€ โ˜ ๏ธ ๐Ÿ‘ฝ ๐Ÿ‘พ ๐Ÿค– ๐ŸŽƒ ๐Ÿ˜บ ๐Ÿ˜ธ ๐Ÿ˜น ๐Ÿ˜ป ๐Ÿ˜ผ ๐Ÿ˜ฝ ๐Ÿ™€ ๐Ÿ˜ฟ ๐Ÿ˜พ' emoji += ' ๐Ÿ‘‹ ๐Ÿคš ๐Ÿ– โœ‹ ๐Ÿ–– ๐Ÿ‘Œ ๐ŸคŒ ๐Ÿค โœŒ๏ธ ๐Ÿคž ๐ŸคŸ ๐Ÿค˜ ๐Ÿค™ ๐Ÿ‘ˆ ๐Ÿ‘‰ ๐Ÿ‘† ๐Ÿ–• ๐Ÿ‘‡ โ˜๏ธ ๐Ÿ‘ ๐Ÿ‘Ž โœŠ ๐Ÿ‘Š ๐Ÿค› ๐Ÿคœ ๐Ÿ‘ ๐Ÿ™Œ ๐Ÿ‘ ๐Ÿคฒ ๐Ÿค ๐Ÿ™ โœ๏ธ ๐Ÿ’… ๐Ÿคณ ๐Ÿ’ช ๐Ÿฆพ ๐Ÿฆต ๐Ÿฆฟ ๐Ÿฆถ ๐Ÿ‘ฃ ๐Ÿ‘‚ ๐Ÿฆป ๐Ÿ‘ƒ ๐Ÿซ€ ๐Ÿซ ๐Ÿง  ๐Ÿฆท ๐Ÿฆด ๐Ÿ‘€ ๐Ÿ‘ ๐Ÿ‘… ๐Ÿ‘„ ๐Ÿ’‹ ๐Ÿฉธ' emoji += ' ๐Ÿ‘ถ ๐Ÿ‘ง ๐Ÿง’ ๐Ÿ‘ฆ ๐Ÿ‘ฉ ๐Ÿง‘ ๐Ÿ‘จ ๐Ÿ‘ฉโ€๐Ÿฆฑ ๐Ÿง‘โ€๐Ÿฆฑ ๐Ÿ‘จโ€๐Ÿฆฑ ๐Ÿ‘ฉโ€๐Ÿฆฐ ๐Ÿง‘โ€๐Ÿฆฐ ๐Ÿ‘จโ€๐Ÿฆฐ ๐Ÿ‘ฑโ€โ™€๏ธ ๐Ÿ‘ฑ ๐Ÿ‘ฑโ€โ™‚๏ธ ๐Ÿ‘ฉโ€๐Ÿฆณ ๐Ÿง‘โ€๐Ÿฆณ ๐Ÿ‘จโ€๐Ÿฆณ ๐Ÿ‘ฉโ€๐Ÿฆฒ ๐Ÿง‘โ€๐Ÿฆฒ ๐Ÿ‘จโ€๐Ÿฆฒ ๐Ÿง” ๐Ÿ‘ต ๐Ÿง“ ๐Ÿ‘ด ๐Ÿ‘ฒ ๐Ÿ‘ณโ€โ™€๏ธ ๐Ÿ‘ณ ๐Ÿ‘ณโ€โ™‚๏ธ ๐Ÿง• ๐Ÿ‘ฎโ€โ™€๏ธ ๐Ÿ‘ฎ ๐Ÿ‘ฎโ€โ™‚๏ธ ๐Ÿ‘ทโ€โ™€๏ธ ๐Ÿ‘ท ๐Ÿ‘ทโ€โ™‚๏ธ ๐Ÿ’‚โ€โ™€๏ธ ๐Ÿ’‚ ๐Ÿ’‚โ€โ™‚๏ธ ๐Ÿ•ต๏ธโ€โ™€๏ธ ๐Ÿ•ต๏ธ ๐Ÿ•ต๏ธโ€โ™‚๏ธ ๐Ÿ‘ฉโ€โš•๏ธ ๐Ÿง‘โ€โš•๏ธ ๐Ÿ‘จโ€โš•๏ธ ๐Ÿ‘ฉโ€๐ŸŒพ ๐Ÿง‘โ€๐ŸŒพ ๐Ÿ‘จโ€๐ŸŒพ ๐Ÿ‘ฉโ€๐Ÿณ ๐Ÿง‘โ€๐Ÿณ ๐Ÿ‘จโ€๐Ÿณ ๐Ÿ‘ฉโ€๐ŸŽ“ ๐Ÿง‘โ€๐ŸŽ“ ๐Ÿ‘จโ€๐ŸŽ“ ๐Ÿ‘ฉโ€๐ŸŽค ๐Ÿง‘โ€๐ŸŽค ๐Ÿ‘จโ€๐ŸŽค ๐Ÿ‘ฉโ€๐Ÿซ ๐Ÿง‘โ€๐Ÿซ ๐Ÿ‘จโ€๐Ÿซ ๐Ÿ‘ฉโ€๐Ÿญ ๐Ÿง‘โ€๐Ÿญ ๐Ÿ‘จโ€๐Ÿญ ๐Ÿ‘ฉโ€๐Ÿ’ป ๐Ÿง‘โ€๐Ÿ’ป ๐Ÿ‘จโ€๐Ÿ’ป ๐Ÿ‘ฉโ€๐Ÿ’ผ ๐Ÿง‘โ€๐Ÿ’ผ ๐Ÿ‘จโ€๐Ÿ’ผ ๐Ÿ‘ฉโ€๐Ÿ”ง ๐Ÿง‘โ€๐Ÿ”ง ๐Ÿ‘จโ€๐Ÿ”ง ๐Ÿ‘ฉโ€๐Ÿ”ฌ ๐Ÿง‘โ€๐Ÿ”ฌ ๐Ÿ‘จโ€๐Ÿ”ฌ ๐Ÿ‘ฉโ€๐ŸŽจ ๐Ÿง‘โ€๐ŸŽจ ๐Ÿ‘จโ€๐ŸŽจ ๐Ÿ‘ฉโ€๐Ÿš’ ๐Ÿง‘โ€๐Ÿš’ ๐Ÿ‘จโ€๐Ÿš’ ๐Ÿ‘ฉโ€โœˆ๏ธ ๐Ÿง‘โ€โœˆ๏ธ ๐Ÿ‘จโ€โœˆ๏ธ ๐Ÿ‘ฉโ€๐Ÿš€ ๐Ÿง‘โ€๐Ÿš€ ๐Ÿ‘จโ€๐Ÿš€ ๐Ÿ‘ฉโ€โš–๏ธ ๐Ÿง‘โ€โš–๏ธ ๐Ÿ‘จโ€โš–๏ธ ๐Ÿ‘ฐโ€โ™€๏ธ ๐Ÿ‘ฐ ๐Ÿ‘ฐโ€โ™‚๏ธ ๐Ÿคตโ€โ™€๏ธ ๐Ÿคต ๐Ÿคตโ€โ™‚๏ธ ๐Ÿ‘ธ ๐Ÿคด ๐Ÿฅท ๐Ÿฆธโ€โ™€๏ธ ๐Ÿฆธ ๐Ÿฆธโ€โ™‚๏ธ ๐Ÿฆนโ€โ™€๏ธ ๐Ÿฆน ๐Ÿฆนโ€โ™‚๏ธ ๐Ÿคถ ๐Ÿง‘โ€๐ŸŽ„ ๐ŸŽ… ๐Ÿง™โ€โ™€๏ธ ๐Ÿง™ ๐Ÿง™โ€โ™‚๏ธ ๐Ÿงโ€โ™€๏ธ ๐Ÿง ๐Ÿงโ€โ™‚๏ธ ๐Ÿง›โ€โ™€๏ธ ๐Ÿง› ๐Ÿง›โ€โ™‚๏ธ ๐ŸงŸโ€โ™€๏ธ ๐ŸงŸ ๐ŸงŸโ€โ™‚๏ธ ๐Ÿงžโ€โ™€๏ธ ๐Ÿงž ๐Ÿงžโ€โ™‚๏ธ ๐Ÿงœโ€โ™€๏ธ ๐Ÿงœ ๐Ÿงœโ€โ™‚๏ธ ๐Ÿงšโ€โ™€๏ธ ๐Ÿงš ๐Ÿงšโ€โ™‚๏ธ ๐Ÿ‘ผ ๐Ÿคฐ ๐Ÿคฑ ๐Ÿ‘ฉโ€๐Ÿผ ๐Ÿง‘โ€๐Ÿผ ๐Ÿ‘จโ€๐Ÿผ ๐Ÿ™‡โ€โ™€๏ธ ๐Ÿ™‡ ๐Ÿ™‡โ€โ™‚๏ธ ๐Ÿ’โ€โ™€๏ธ ๐Ÿ’ ๐Ÿ’โ€โ™‚๏ธ ๐Ÿ™…โ€โ™€๏ธ ๐Ÿ™… ๐Ÿ™…โ€โ™‚๏ธ ๐Ÿ™†โ€โ™€๏ธ ๐Ÿ™† ๐Ÿ™†โ€โ™‚๏ธ ๐Ÿ™‹โ€โ™€๏ธ ๐Ÿ™‹ ๐Ÿ™‹โ€โ™‚๏ธ ๐Ÿงโ€โ™€๏ธ ๐Ÿง ๐Ÿงโ€โ™‚๏ธ ๐Ÿคฆโ€โ™€๏ธ ๐Ÿคฆ ๐Ÿคฆโ€โ™‚๏ธ ๐Ÿคทโ€โ™€๏ธ ๐Ÿคท ๐Ÿคทโ€โ™‚๏ธ ๐Ÿ™Žโ€โ™€๏ธ ๐Ÿ™Ž ๐Ÿ™Žโ€โ™‚๏ธ ๐Ÿ™โ€โ™€๏ธ ๐Ÿ™ ๐Ÿ™โ€โ™‚๏ธ ๐Ÿ’‡โ€โ™€๏ธ ๐Ÿ’‡ ๐Ÿ’‡โ€โ™‚๏ธ ๐Ÿ’†โ€โ™€๏ธ ๐Ÿ’† ๐Ÿ’†โ€โ™‚๏ธ ๐Ÿง–โ€โ™€๏ธ ๐Ÿง– ๐Ÿง–โ€โ™‚๏ธ ๐Ÿ’… ๐Ÿคณ ๐Ÿ’ƒ ๐Ÿ•บ ๐Ÿ‘ฏโ€โ™€๏ธ ๐Ÿ‘ฏ ๐Ÿ‘ฏโ€โ™‚๏ธ ๐Ÿ•ด ๐Ÿ‘ฉโ€๐Ÿฆฝ ๐Ÿง‘โ€๐Ÿฆฝ ๐Ÿ‘จโ€๐Ÿฆฝ ๐Ÿ‘ฉโ€๐Ÿฆผ ๐Ÿง‘โ€๐Ÿฆผ ๐Ÿ‘จโ€๐Ÿฆผ ๐Ÿšถโ€โ™€๏ธ ๐Ÿšถ ๐Ÿšถโ€โ™‚๏ธ ๐Ÿ‘ฉโ€๐Ÿฆฏ ๐Ÿง‘โ€๐Ÿฆฏ ๐Ÿ‘จโ€๐Ÿฆฏ ๐ŸงŽโ€โ™€๏ธ ๐ŸงŽ ๐ŸงŽโ€โ™‚๏ธ ๐Ÿƒโ€โ™€๏ธ ๐Ÿƒ ๐Ÿƒโ€โ™‚๏ธ ๐Ÿงโ€โ™€๏ธ ๐Ÿง ๐Ÿงโ€โ™‚๏ธ ๐Ÿ‘ญ ๐Ÿง‘โ€๐Ÿคโ€๐Ÿง‘ ๐Ÿ‘ฌ ๐Ÿ‘ซ ๐Ÿ‘ฉโ€โค๏ธโ€๐Ÿ‘ฉ ๐Ÿ’‘ ๐Ÿ‘จโ€โค๏ธโ€๐Ÿ‘จ ๐Ÿ‘ฉโ€โค๏ธโ€๐Ÿ‘จ ๐Ÿ‘ฉโ€โค๏ธโ€๐Ÿ’‹โ€๐Ÿ‘ฉ ๐Ÿ’ ๐Ÿ‘จโ€โค๏ธโ€๐Ÿ’‹โ€๐Ÿ‘จ ๐Ÿ‘ฉโ€โค๏ธโ€๐Ÿ’‹โ€๐Ÿ‘จ ๐Ÿ‘ช ๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘ฆ ๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘ง ๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ฆ ๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘ฆโ€๐Ÿ‘ฆ ๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ง ๐Ÿ‘จโ€๐Ÿ‘จโ€๐Ÿ‘ฆ ๐Ÿ‘จโ€๐Ÿ‘จโ€๐Ÿ‘ง ๐Ÿ‘จโ€๐Ÿ‘จโ€๐Ÿ‘งโ€๐Ÿ‘ฆ ๐Ÿ‘จโ€๐Ÿ‘จโ€๐Ÿ‘ฆโ€๐Ÿ‘ฆ ๐Ÿ‘จโ€๐Ÿ‘จโ€๐Ÿ‘งโ€๐Ÿ‘ง ๐Ÿ‘ฉโ€๐Ÿ‘ฉโ€๐Ÿ‘ฆ ๐Ÿ‘ฉโ€๐Ÿ‘ฉโ€๐Ÿ‘ง ๐Ÿ‘ฉโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ฆ ๐Ÿ‘ฉโ€๐Ÿ‘ฉโ€๐Ÿ‘ฆโ€๐Ÿ‘ฆ ๐Ÿ‘ฉโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ง ๐Ÿ‘จโ€๐Ÿ‘ฆ ๐Ÿ‘จโ€๐Ÿ‘ฆโ€๐Ÿ‘ฆ ๐Ÿ‘จโ€๐Ÿ‘ง ๐Ÿ‘จโ€๐Ÿ‘งโ€๐Ÿ‘ฆ ๐Ÿ‘จโ€๐Ÿ‘งโ€๐Ÿ‘ง ๐Ÿ‘ฉโ€๐Ÿ‘ฆ ๐Ÿ‘ฉโ€๐Ÿ‘ฆโ€๐Ÿ‘ฆ ๐Ÿ‘ฉโ€๐Ÿ‘ง ๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ฆ ๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ง ๐Ÿ—ฃ ๐Ÿ‘ค ๐Ÿ‘ฅ ๐Ÿซ‚' @@ -16,15 +17,6 @@ export default class Emoji { this.callback = callback this.element = null this.input = input - - // ็ช—ๅฃ่ขซๅˆ›ๅปบๆ—ถ็š„ๅ›ž่ฐƒๅ‡ฝๆ•ฐ - // ็ช—ๅฃ่ขซๅ…ณ้—ญๆ—ถ็š„ๅ›ž่ฐƒๅ‡ฝๆ•ฐ - // ้€‰ไธญ่กจๆƒ…ๆ—ถ็š„ๅ›ž่ฐƒๅ‡ฝๆ•ฐ - // ๅชๅœจไฝฟ็”จ็ป„ไปถๆ—ถๆ‰ๅˆ›ๅปบ็ป„ไปถ - // ๆŒ‚่ฝฝๅผ€ๅ…ณๆŒ‰้’ฎ - // ๆŒ‚่ฝฝ่พ“ๅ…ฅๆก†(ๆŒ‚่ฝฝ่พ“ๅ…ฅๆก†ๅฏไปฅ็ฒพ็กฎๅˆฐๅ…‰ๆ ‡ไฝ็ฝฎ) - // ๅŠจ็”ปๆ—ถ็งป้™คๅŠจ็”ปไปฅๅค–็š„ไบคไบ’่ง„ๅˆ™ไปฅๆ้ซ˜ๆ€ง่ƒฝ - // ๅŠ ่ฝฝๆ—ถๆธๆ˜พ่ฟ‡ๆธก ็ฆปๅผ€ๆ—ถๆธ้š่ฟ‡ๆธก } create_window() { @@ -114,27 +106,27 @@ export default class Emoji { } // ๆ˜พ็คบ็ป„ไปถ(ๆ–นๆณ•) - show() { + async show() { this.create_window() this.element.style.display = "flex" this.div.offsetWidth this.element.style.background = "rgba(0,0,0,.6)" this.element.focus() this.div.style.bottom = "0px" - setTimeout(() => { - this.ul.classList.add('ok') - }, 800) + await new Promise(resolve => setTimeout(resolve, 800)) + this.ul.calssList.add('ok') + this.event.onShow() } // ้š่—็ป„ไปถ(ๆ–นๆณ•) (ๆ˜ฏๅฆๅฐ†่š็„ฆ่ฟ”ๅ›ž็ป™ input ็š„ๅŽŸๆœฌไฝ็ฝฎ?) - hide() { + async hide() { this.ul.classList.remove('ok') - setTimeout(() => { - this.element.parentNode.removeChild(this.element) - this.element = null - }, 450) this.element.style.background = "rgba(0,0,0,0)" this.div.style.bottom = "-90%" + await new Promise(resolve => setTimeout(resolve, 450)) + this.element.parentNode.removeChild(this.element) + this.element = null + this.event.onHide() } } diff --git a/main.js b/main.js index ff46d85..ce5f053 100644 --- a/main.js +++ b/main.js @@ -29,5 +29,3 @@ const emoji = new Emoji({ document.querySelector('#counter').addEventListener('click', () => { emoji.show() }) - -//emoji.show()