[fixed] Onclick not working | Sololearn: Learn to code for FREE!

+13

[fixed] Onclick not working

I wanted to change image and text when user clicks a button. But nothing happens after clicking button 😢 Why ? https://code.sololearn.com/Wcqmj0SjU7yR/?ref=app

9/16/2020 11:42:01 AM

Prasant

44 Answers

New Answer

+32

"click" function name doesn't work. Please rename your function. Hope it works. Here is the explanation: https://stackoverflow.com/questions/4388443/javascript-function-name-cannot-set-as-click#:~:text=Because%20there's%20a%20.

+19

https://code.sololearn.com/W5wS74eCmjh3/?ref=app

+17

The 'click' by itself is NOT a javascript reserved keyword outside the context of the inline event handler . That is to say the "click" method defined in the question is valid. //I hope this works Try by using event handler 'externally' will work. E.g. using jQuery: $('input').click(click);

+15

wlcm :D

+9

Change the name of the click function Try anything else other than click and it will work

+7

For Cross-platform capabilities, try using this function that I, Kode Krasher and a few others brought up and have been using every since, main credits to Kode krasher const eventBasedOnDevice = navigator.userAgent.match(/ipod|ipad|iphone/i) ? 'touchstart' : 'click'; document.getElementById(/*id of whatever you want to check for clicks/*).addEventListener(eventBasedOnDevice, function event(event) { touchHandler(); //what you want to happen onclick })

+5

Ruba Kh , Satnam , Aditya Thank you all.😊 But is "click" a reserved word for JavaScript ?

+5

Kode Krasher Is the line navigator.userAgent.match(/ipod|ipad|iphone/i) to know whether the user device is Android/ iPhone/ other ?

+5

Kode Krasher Hmm I could do that after a long experiment 😅😅 https://code.sololearn.com/WB2xjlW46c3c/?ref=app

+4

Aditya Oh I got it Thank you very much again 😊

+4

Sofi💞 Thank you 😊 I got it now

+4

Kode Krasher Thank you very much Sir for explaining it

+4

مهان علوی مجد But I don't know what is eventlistner, as I have not completed JavaScript 😔. Can you please give an example how it works ?

+4

Kode Krasher Thank you I was also thinking to use arrays, so that we can use many images as we wish. But I couldn't understand this if ( theMsg === messages[1] ) How does this count the number of clicks or how does it work ?

+3

Vachila64☕ Would you please give an example ? (code) I couldn't understand that function 😢

+3

Kode Krasher I have not tried yet 😅 Let me try first

+3

change name of function to clickme for example. you can't use "click" for name of a function.

+3

Kode Krasher Again I had never tried such projects 😅. But let me try once.

+3

Kode Krasher Thank you again 😊

+3

Kode Krasher Oh now I got it First it checks whether (theMsg === messages[1]) or not Then it returns false, so it exicutes else statement and changes to to Second image and text. When we press the button again, the if condition returns true and again changes to first image and text. In this way the loop continues. Am I right ?