domina icon indicating copy to clipboard operation
domina copied to clipboard

Events don't behave correctly

Open dubiousdavid opened this issue 11 years ago • 8 comments

The following does not work in any browser I tested.

(listen! :click (fn [evt] (log "button clicked!")))

Nor does

(listen! js/document :click (fn [evt] (log "button clicked!")))

dubiousdavid avatar Mar 20 '13 21:03 dubiousdavid

Hi,

You need to tell it what you want to listen to:

(listen! (domina/by-id "my-button") :click (js/alert "Woohoo"))

fwaddle avatar Apr 21 '13 14:04 fwaddle

js/document is the something in this scenario. It's cool, though. I ended up writing my own dom manipulation/even library. Thanks for the inspiration.

dubiousdavid avatar Apr 21 '13 17:04 dubiousdavid

@dubiousdavid so what was the problem with the above code?

superbobry avatar Apr 21 '13 19:04 superbobry

Sorry, not sure what you're referring to. My code or the code posted by fwaddle?

dubiousdavid avatar Apr 21 '13 19:04 dubiousdavid

My bad, I was referring to your code: is the current implementation of listen! causing the problem or is it the way you use listen!?

superbobry avatar Apr 21 '13 20:04 superbobry

js/document should be a valid listen target, should it not? You can do this in jQuery, and it works as expected.

dubiousdavid avatar Apr 22 '13 01:04 dubiousdavid

I'm know very little about jquery and therefore not sure what you're trying to do but when attempting to listen you need to get the element itself like so:

(ev/listen! (.-getElementById js/document) :click (js/alert "Hellllo"))

Anyway is your own dom manipulation library open source or available?

fwaddle avatar Apr 22 '13 01:04 fwaddle

My goal is to open-source a bunch of cljs libraries (browser and node.js based) I've been developing for the company I work for. I need to run it past my boss, but I would really like to share with the community, especially since much of the work is inspired by existing projects like domina.

David

On Apr 21, 2013, at 9:53 PM, fwaddle [email protected] wrote:

I'm know very little about jquery and therefore not sure what you're trying to do but when attempting to listen you need to get the element itself like so:

(ev/listen! (.-getElementById js/document) :click (js/alert "Hellllo"))

Anyway is your own dom manipulation library open source or available?

— Reply to this email directly or view it on GitHub.

dubiousdavid avatar Apr 22 '13 13:04 dubiousdavid