Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- (defn select-first-on-enter
- [input-id]
- (let [input (.getElementById js/document input-id)]
- (events/listen
- input (clj->js [event-types/KEYDOWN event-types/BLUR])
- (fn [event]
- (js/console.log "Event fired!")
- (let [key-code (or (.-keyCode event) (.-which event))]
- (js/console.log (str "Event fired! : " key-code))
- (cond
- (and
- (or (= key-codes/ENTER key-code) (= key-codes/TAB key-code))
- (not (gdom/getElementByClass ".pac-item-selected")))
- (do
- (js/console.log "tab or enter")
- (.dispatchEvent input
- (js/KeyboardEvent.
- event-types/KEYDOWN
- (clj->js {:keyCode key-codes/DOWN
- :which key-codes/DOWN
- :key "down"
- :code key-codes/DOWN})))
- (js/console.log "faked down"))
- (= "blur" (.-type event))
- (set! (.-value input) (.-textContent
- (.querySelector js/document ".pac-container .pac-item:first-child")))
- :else nil)
- )))))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement