Skip to content

Instantly share code, notes, and snippets.

@howtogeek
Last active January 22, 2020 23:45
Show Gist options
  • Star 5 You must be signed in to star a gist
  • Fork 3 You must be signed in to fork a gist
  • Save howtogeek/6b3ed7d917900229b37e to your computer and use it in GitHub Desktop.
Save howtogeek/6b3ed7d917900229b37e to your computer and use it in GitHub Desktop.
Change font to Comic Sans if reader is using Adblock (and display a message at the top)
<script type="text/javascript">
var iframe = document.createElement("iframe");
iframe.height = "1px";
iframe.width = "1px";
iframe.id = "ads-text-iframe";
iframe.src = "/adframe.js";
document.body.appendChild(iframe);
var a = [
"In a world free from ads, one font reigns supreme. COMIC SANS!",
"Today's ad free site is brought to you by Comic Sans.",
"Please enjoy our website free from ads, showcased in regal Comic Sans.",
"Achievement Unlocked! You've unlocked AdBlocker. Your reward is Comic Sans.",
"Hello Adblock User! You have unlocked a secret font! Unfortunately, it’s Comic Sans.",
"Hello Adblock User! You have won 1 free font! Unfortunately, it’s Comic Sans.",
"Some things are even worse than ads. Meet Comic Sans.",
"One of our fonts got loose and we can't find it. Do you see Comic Sans anywhere?"
];
var amsg = a[Math.floor(Math.random() * a.length)];
setTimeout(function(){
var iframe = document.getElementById("ads-text-iframe");
if(iframe.style.display == "none" || iframe.style.display == "hidden" || iframe.style.visibility == "hidden" || iframe.offsetHeight == 0) {
$( "body" ).prepend( '<div style="display:block;padding:4px;background:gold">' + amsg + '</div>' );
$('*').css("font-family","Comic Sans MS");
iframe.remove();
}else{
iframe.remove();
}
}, 500);
</script>
@howtogeek
Copy link
Author

This requires jQuery to work. And you should probably stick it in the footer.

@MaffooBristol
Copy link

Strange combination of vanilla JS and jQuery; why not just make those two jQuery functions use plain JS instead and remove the dependency?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment