Skip to content
← Back to Community
Actual un-clickable button (for real this time)!
Profile icon
Baconman321

Disclaimer!

There always has been (and always will be) ways to bypass this since devtools is more powerful than JavaScript itself. Don't expect it to be actually "unclickable"!


After seeing @invisibleOne 's post, I realized that there are soo many ways to bypass the "clicking" for his project.

I decided to take matters into my own hands and actually make my button "un-clickable". None of the methods described in invisibleone's post works now (not even mine)!

See if you can get this button >:)

Oh and BTW:

Calling the function or alerting the message that the function alerts is not counted as the solution. I can't stop liars, but if you find a way around it then please tell me.

People who have clicked the button (legitimately. Those who don't post their reasons or their reasons aren't valid (AKA: they aren't actually clicking it) won't get on the "leaderboard"):

  • Wilke000
  • 1andonlyaether
  • Codemonkey51
  • DSAEvan
  • darkdarcool
  • DrakeFletcher2

Ok so many people are doing it. Great guys!

I'm not going to add any more because so many people are doing it.

I am so proud of you replers! You are all such great critical thinkers!

Keep in mind guys that I can only do so much because most browsers give you more control over JavaScript than JavaScript itself...

Oh, wow

I have found and prevented at least 4 methods of clicking the button via cheats since I made this post:

  • Focusing the element using HTMLButtonElement.prototype.focus()
  • Mutating globalThis.requestAnimationFrame
  • Tabbing/editing the tab index
  • Modifying the size/position of the element (to make it stay in one place)
  • Right clicking

Ok guys

You now can't use window.alert :D

Ahh, yes. Now I can tell who actually clicked it and who didn't >:)

Yay, we got on trending!!!

Oh and guys... the message saying "lol nice try guys ;D" means you didn't get it.

Fixed the right click hack >:D

(Possibly) also fixed the right clicking address bar cheat :D (button will be disabled. You can click it, but no "You got me!")

Yoo guys, if the button is gray that is on purpose. It's disabled when the web page loses focus (to prevent the right click cheat... which still works ARGH).

You got me guys, I can't defend this button forever :(

Voters
Profile icon
DividedFox
Profile icon
Classfied3D
Profile icon
89degrees
Profile icon
Navinor
Profile icon
MikeW3
Profile icon
SumaitaAlam
Profile icon
SeamusDonahue
Profile icon
svensk007
Profile icon
OldWizard209
Profile icon
Atomic-Gamming
Comments
hotnewtop
Profile icon
RyanShrey1
Profile icon
Baconman321

@RyanShrey1 LOL!

SO TRUE!

Btw I love science as well...

Profile icon
robertoblong

xkcd. Very funny.

Profile icon
ChezCoder

hm...
hm

if you wanted it to be unclickable that bad, just give the button the disabled attribute, <button disabled>Cant Click</button> and disable attribute changing.

HTMLElement.prototype.setAttribute = function() { alert("Sike Gottem"); }
Profile icon
sojs

this is very good. @ChezCoder

Profile icon
RayhanADev

@ChezCoder faxxxxxxxx

Profile icon
Ayoubuvin1

@ChezCoder you can bypass this

Profile icon
Ayoubuvin1

@ChezCoder you can bypass this

Profile icon
Baconman321

@ChezCoder Ok ez fix >:)

Btw glad to see you back buddy!

Oh, wait... it's already fixed because I froze HTMLButtonElement, so it should prevent setAttribute from being changed... oh wait I forgot to freeze the prototype! Thanks :)

Profile icon
Baconman321

@ChezCoder And yea you could have the disabled attribute, but there is supposed to be a chance to click it without the obvious.

Also, alert won't work cuz it's inside a code block and is not in globals.

Profile icon
xxpertHacker

@ChezCoder Lmao, HTMLElement#setAttribute actually looks up the prototype until it finds Element#setAttribute ;)

The bypass from there is simple:

Element.prototype.setAttribute.call(button);

JS cannot be sandboxed by itself, it's hell to try.

Profile icon
Yoplayer1py

@ChezCoder Thanks

Profile icon
Baconman321

@xxpertHacker Too, true.. too true.

Can't I delete setAttribute tho?

Profile icon
xxpertHacker

@Baconman321 I guess?

Profile icon
Baconman321

@xxpertHacker Well, I mean.. imagine if you had even more control (over the client's computer) with JS... it would be a nightmare.

Someone thought they could prevent ending processes in NodeJS (or more or less they were kidding).

Profile icon
xxpertHacker

@Baconman321 I don't like NodeJS for a thousand reasons, among them, the execution of un-sandboxed JS, with higher privilege than browser JS.

Oh shoot, seems like that sounds like a perfect use case for Wasm though, since it's always safe.


Btw, you need SES in order to sandbox your button... otherwise, I could just assess a new Element from another window if I wanted to.

Actually, no, you just stright-up can't defend that button.

Profile icon
Baconman321

@xxpertHacker Prob not... :(

Profile icon
ChezCoder

@Baconman321 ive been fumbling with it for a few minutes now and cant find anything, good job!

Profile icon
Baconman321

@ChezCoder :D

My military strategies have worked well

Profile icon
TinyMooshmallow

@ChezCoder Or you can use touchscreen

Profile icon
ChezCoder

@Baconman321 make the repl disable the button if the user is on mobile, im sure you can find ways to detect this by searching google :)

Profile icon
Baconman321

@ChezCoder mabe :)

This is kinda ded ngl.

Profile icon
HackingGo306

I clicked it!

Edit: the button doesn't move unless you move your mouse first, so memorize where the button 'spawns' and move your cursor there. Then reload the page using a keyboard shortcut.

Profile icon
Aqtion

Yeah this works haha @HackingGo306

Profile icon
HackingGo306

Noooo the zoom-in and then zoom-out strategy doesn't work anymore...

Profile icon
Plorzon

@HackingGo306
I used your stratigies to do it lolll

Profile icon
DrakeFletcher2

Got it! Go to the project page, hover cursor in the middle of the screen, scroll down, move cursor directly below button, scroll back up (without moving mouse) and click!

Profile icon
DrakeFletcher2

@DrakeFletcher2 Also, right-click method still works for me.

Profile icon
Baconman321

@DrakeFletcher2 Hm, try now. it shouldn't work...

I prevented context menu, so it shouldn't bring up the menu for anyone...

Profile icon
DrakeFletcher2

@Baconman321 Yeah now it is blocked

Profile icon
Codemonkey51

Hehehe I on iOS with no access to any js terminal have clicked the button ;)

image

Profile icon
Mrunank

[ad removed by a moderator]

Profile icon
Wilke000

It's great @Mrunank! But no ads

Profile icon
RayhanADev

@Codemonkey51 :O HOW
I have been tapping away at this on my iPad and it hasn't worked

Profile icon
Codemonkey51
Profile icon
RayhanADev

@Codemonkey51 :O
magic

Profile icon
Mrunank

@Wilke000 I am sorry

Profile icon
DerpBurgerPlayz

image -cough- literally just dragged my mouse out scrolled down and clicked it lol

Profile icon
UnluckyFroggy

I got it first try. LOL!

Profile icon
AntimatterDev

gru
ill make a actual unclickable button. no tab spoofing or reload clicking or that stuff. ill make it truly unclickable

Profile icon
Baconman321

@AntimatterDev Not really possible, but ok!

The button will always be clickable :/

Profile icon
AntimatterDev

@Baconman321 maybe your definition of clickable is different than mine. what is your definition of clickable?

Profile icon
Baconman321

@AntimatterDev Able to be clicked.

If you make it in JavaScript then the client user will almost always have more power over the program than JavaScript itself.

Like xxpertHacker said, it's hell to try to sandbox JavaScript

Profile icon
AntimatterDev

@Baconman321 what is sandboxing javascript?

Profile icon
Baconman321

@AntimatterDev https://stackoverflow.com/questions/7043882/what-actually-is-sandboxing-in-javascript

Basically trying to lock out external resources from meddling with the script.

In this case, trying to prevent the user from editing the code.

Profile icon
AntimatterDev

@Baconman321 oh thats decently simple. you just have to make it so that none of the elements appear on inspect

Profile icon
AntimatterDev

ok i fixed reload spoofing

Profile icon
AntimatterDev

and to fix the thing of moving faster than it can detect i just stopped the button moving with your mouse

Profile icon
Baconman321

@AntimatterDev That's not rlly possible...

Profile icon
AntimatterDev

@Baconman321 whats not possible?

Profile icon
AntimatterDev

fixing reload spoofing?

Profile icon
AntimatterDev

i also fixed inspect opening using keyboard shortcuts

Profile icon
Baconman321

@AntimatterDev That's not possible, actually.

Profile icon
AntimatterDev

@Baconman321 whats not possible?

Profile icon
AntimatterDev

idk what your saying is impossible but ive done everything ive said ive done. its actually really simple.

Profile icon
Baconman321

@AntimatterDev You can't prevent inspecting.

They can always open up chrome://inspect or the browser's inspect URL/command.

Profile icon
Baconman321

@AntimatterDev I can still open up inspect :)

Profile icon
AntimatterDev

@Baconman321 on mine? how did u do it?

Profile icon
AntimatterDev

how do you use chrome://inspect. like how would you point it towards the webpage your trying to inspect

Profile icon
Baconman321
Profile icon
Baconman321

@AntimatterDev chrome://inspect allows you to inspect any process running on the chrome browser. It's a local address, so you just type it into the address bar (in a new tab).

Profile icon
AntimatterDev

@Baconman321 ok should be blocked now

Profile icon
AntimatterDev

@Baconman321 hmm ill try and see if i can block that

Profile icon
AntimatterDev

ok i found a solution that might work to try and block devtools brb

Profile icon
Baconman321

@AntimatterDev You can't lol.

Profile icon
AntimatterDev

okie i cant test if they are blocked rn because im on my school pc

Profile icon
Baconman321

@AntimatterDev You can't block devtools, it's impossible.

You can set an interval to trigger debugger;.

When they open up the the devtools it will constantly throw the debugger.

That's the closest you can do to stopping devtools AFAIK.

Profile icon
Baconman321

@AntimatterDev It's just not possible, you can't block something that has more control over your program :/

Profile icon
AntimatterDev

@Baconman321 are you sure? maybe you arent looking at all the options

Profile icon
AntimatterDev

maybe a handy little module called devtoole-detect?

Profile icon
Baconman321

@AntimatterDev Nope.

You can't stop devtools, period.

If you want some more answers/opinions, please post on ask instead of asking me here.

Profile icon
AntimatterDev

@Baconman321 i will prove you wrong as best i can just you wait

Profile icon
Baconman321

@AntimatterDev You can't block them from opening devtools on your website!

@xxpertHacker can verify this (srry for ping but xxpertHacker this guy here is like "I can prevent something that has more power over my program")

Profile icon
Baconman321
Profile icon
AntimatterDev

@Baconman321 maybe i cant stop you from opening it but what about stopping people from using it?

Profile icon
xxpertHacker

@Baconman321 😂 I read the entire conversation, it's funny to see people say what they w
will do, instead of just doing it.

Profile icon
AntimatterDev

such as if they open it it detects it and self destructs the webpage stopping them from doing anything to it

Profile icon
AntimatterDev

@xxpertHacker im on a school pc rn so i cant do it rn but i think ive almost got a working prototype before i push it to my own version of this

Profile icon
Baconman321

@AntimatterDev Again, not possible.

Still, you could try for those less experienced (I haven't found a way around it yet, but that doesn't mean there isn't a way):

window.setInterval(_ => (debugger), 1);
Profile icon
Baconman321

@xxpertHacker Devtools can't be "blocked" tho, right?

Profile icon
AntimatterDev

@Baconman321 you could just send alerts constantly to stop people from being able to edit anything on the page

Profile icon
AntimatterDev

@Baconman321 im not saying to block it im saying to make it unusable

Profile icon
xxpertHacker

@AntimatterDev Ping me when you think that it's done, so I can break it ;)

Profile icon
AntimatterDev

@xxpertHacker ok i will :). keep in mind that im only a highschooler and im only decent at coding

Profile icon
Baconman321

@AntimatterDev @xxpertHacker it's nice and all that you guys are trying to take my button to the next level and try to break it and such, but could you continue this somewhere where I don't get pinged every time you make a message?

Kinda annoying ngl.

Profile icon
LincolnMiddle

It is easy without cheating, just right click and all those options pop up. Then click the button itself and press enter.

Profile icon
LincolnMiddle

Debunker!!

Profile icon
LincolnMiddle

srry

Profile icon
BobTheTomatoPie

lol yea thats what i did @DSAEvan

Profile icon
TalinSharma

Yeah me too!

@BobTheTomatoPie

Profile icon
Wilke000

YES @DSAEvan!
image
I figured that out without your help!!!

MUHAHAHAHAHAHAH!!!!!

Profile icon
Baconman321

@Wilke000 That's not the actual message. That's the message of the disabled window.alert...

I had a bug with it always displaying that message tho...

Profile icon
Baconman321

@DSAEvan @BobTheTomatoPie HaHa, fixed now :D

Profile icon
Wilke000
Profile icon
Wilke000
Profile icon
Baconman321

@Wilke000 Hmmmm... how exactly?

Profile icon
Wilke000

By clickng @Baconman321!

Profile icon
Baconman321

@Wilke000 Yes, but how?

You can't just "click" most of the time...

Profile icon
Wilke000

This @Baconman321 I am on a Chromebook, I double click
image
Sneaking through the crack......

Profile icon
Baconman321

@Wilke000 I have an idea on how to prevent that :D

Profile icon
Wilke000

:0 @Baconman321 YAY!!
I CLICKED THE BUTTON!!!

Profile icon
Wilke000
Profile icon
Baconman321

@Wilke000 Ok...

Profile icon
Wilke000

Thank you @Baconman321
Yay!

Profile icon
ZacharyElliott2

I am going to end up wasting a whole class with this. I hate you ;).

Profile icon
AshtonHill1

its kinda easy to get if u have a computer with touchscreen
all u have to do is spam click and touch with ur finger

Profile icon
Baconman321
Profile icon
bot111222

HoW...

Profile icon
Baconman321

@bot111222 It might be disabled by your orginization.

Profile icon
bot111222

tauch screeeeennnnn >:)

Profile icon
bot111222

bro i cant inspect it

Profile icon
Nameless9000
Profile icon
Baconman321

@Nameless9000 Weird.

I thought I got rid of window.alert for console users.

Oh well...

Profile icon
SeamusDonahue

I clicked it... I put my mouse above it "offscreen" then scrolled down to it and clicked. Basically what @ChezCoder did

Profile icon
JasonMathew

I GOT IT WOOOOOOOO!!!!!!

used the right clicking on the the search bar hack.

is there a correct way or we just usin all the hax

Profile icon
Baconman321

@JasonMathew prob hax.
I can't control the browser itself, which is why you can click it.

Profile icon
JasonMathew

@Baconman321

So is there a 'proper' solution or is hax the point?

Profile icon
Baconman321

@JasonMathew Just hax :(

I mean, if you move your mouse around fast enough and click, you might get it. But there is no definite proper solution, so yeah just hax for the most part.

Profile icon
SamiOsman
Profile icon
Baconman321

@SamiOsman :D

Unfortunately that is invisibleone's repl, not mine. Still tho, :D

Profile icon
SamiOsman

@Baconman321 Oh shoot sorry but guess what... now congrats!
Screenshot 2021-04-27 at 2.46.26 PM

Profile icon
Baconman321
Profile icon
SamiOsman

@Baconman321 :D Congrats Lol!

Profile icon
pizzaharald

i win

Profile icon
M07

I turned my mouse speed up a bunch and managed to click it, but it wouldn't do anything.

https://drive.google.com/file/d/1yF-NXHh_Lb2yNWBg0BagOCYsh3sVlMAn/view?usp=sharing

(that's a screen recording of my WHOLE screen)

Profile icon
Baconman321

@M07 Yeah, the button is glitched right now. I have other things to do though, this project is kind of dead. I'll take out the feature that stops you from clicking while not focusing on the webpage because it's buggy :(

Profile icon
savageking65200

Why is it impossible? I can get my mouse on the button by moving it really fast and then it just gets grayed out! I can get my mouse on it (without cheating) and then it doesn't do anything :( please fix!

Profile icon
Baconman321

@savageking65200 Unfortunately this project is dead.

I might fix it later on :/

Oh, plus it turns grey when you go out of the window. IDK why it would gray out when you go over the button. I'll look into that eventually (I have many other things to do. If you want to fix it yourself right away then just fork it :/)

Profile icon
ShaheenUmair

i clicked it ez

Profile icon
StringentDev

go on a tablet, click the button, no devtool needed :D i did that

Profile icon
Baconman321

@StringentDev This be a ded project :/

Profile icon
Zombs76
Profile icon
mordyman
Profile icon
Baconman321

@mordyman Uhhh, it's disabled probably because the webpage lost focus.

Profile icon
mordyman
Profile icon
SamiOsman

HELP ME I DONT UNDERSTAND!!!!
Screenshot 2021-04-08 at 3.50.57 PM

Profile icon
Baconman321

@SamiOsman It disables when you move your mouse outside of the web page.

Profile icon
SamiOsman

@Baconman321 But if you look closely, my cursor was on the button :(.

Profile icon
Baconman321

@SamiOsman Oh....

IDK then :(

Profile icon
SamiOsman
Profile icon
tokasenpai

wonderful

Profile icon
RobertCodez

I clicked it, with my finger xD

Profile icon
JonathanBeamon

something turned blue for me

Profile icon
DavidHilsee

ive figured out a way to hover over it and keep it red but it just greys out when i click so i dont think it is possible to click

Profile icon
DavidHilsee
Profile icon
DavidHilsee

ps for anyone who wants do do it just press ctrl+r to reload and hover your mouse over the button