Created
December 15, 2010 03:08
-
-
Save phiggins42/741572 to your computer and use it in GitHub Desktop.
cheney.js
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<!DOCTYPE html> | |
<html> | |
<head> | |
<title>AbstractComparingFactoryThingInterface (or A Simple Dojo Image Comparing Thinger)</title> | |
<style type="text/css"> | |
p { | |
font:14px Helvetica Neue,Arial,sans-serif; | |
} | |
</style> | |
</head> | |
<body class="claro"> | |
<h1>Cheney.js</h1> | |
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed aliquam tempor justo id dapibus. Nunc quis magna purus. In vel nibh lorem. Praesent quis erat sem, vel dictum neque. Aenean commodo dui sed felis blandit vehicula. Donec scelerisque neque in eros gravida non sollicitudin nisl tempus. Sed nec risus diam. In a arcu dolor. Suspendisse lobortis luctus pharetra. Maecenas at erat eget est aliquet ultrices ac in nisi.</p> | |
<p>Quisque at risus quis lorem sollicitudin hendrerit eu quis nunc. Quisque dapibus suscipit quam id pulvinar. Proin sollicitudin tristique pulvinar. Aliquam sagittis ipsum nec ante pellentesque malesuada. In blandit semper molestie. Etiam euismod, mauris sed dictum molestie, lorem mi pulvinar arcu, in feugiat lectus lectus a nunc. Phasellus lacinia hendrerit ante, sed auctor velit convallis ut. Pellentesque sit amet feugiat eros. Nulla nec nisi et turpis mollis sollicitudin. Aenean tortor dolor, dapibus eget pretium vitae, porta eu nisi. Nulla fermentum auctor arcu eu gravida. Donec convallis, nisl vel faucibus ultrices, velit libero congue massa, a interdum urna orci in elit. Phasellus mollis fermentum tellus vitae bibendum. Ut et mi nec nisi dignissim viverra.</p> | |
<p>Sed congue, risus nec pellentesque placerat, arcu ante convallis lorem, sit amet facilisis orci lacus id tortor. Nam interdum dui vel erat condimentum non adipiscing lectus rutrum. Duis lacinia nisi eget turpis tristique eget dictum libero rhoncus. Nulla rhoncus, ipsum dictum pulvinar placerat, urna lorem faucibus lacus, id gravida diam tellus at felis. Fusce in mi justo. Suspendisse imperdiet convallis urna, quis rutrum purus iaculis malesuada. Integer at commodo justo. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer gravida sapien eget lacus rutrum lobortis. Donec nibh lectus, molestie vitae feugiat vitae, ultricies quis velit. Suspendisse massa velit, pretium quis egestas in, fringilla ut dui. Fusce vel nisl ac sapien condimentum adipiscing. Sed at pretium odio. Morbi blandit porta rhoncus.</p> | |
<p>Sed gravida malesuada elit, vel bibendum est faucibus et. Etiam cursus posuere leo. Quisque non porttitor ante. Duis faucibus, dui eget scelerisque iaculis, nulla libero vehicula enim, in pulvinar nisl massa non elit. Sed a odio id felis iaculis tincidunt. Curabitur porta aliquam libero nec elementum. Etiam lobortis elementum sem, eu gravida ante dignissim a. Vivamus eget justo tortor. Suspendisse ac purus nisi, ut adipiscing ipsum. Aliquam neque urna, tempus eu adipiscing sit amet, malesuada ac ligula. Nulla consectetur mi id urna sagittis ut sollicitudin sem volutpat. Integer rutrum libero volutpat eros euismod a ornare purus accumsan. Sed in dolor non massa hendrerit elementum quis ut risus.</p> | |
<p>Nullam commodo augue vitae massa adipiscing tincidunt. Phasellus vulputate felis vitae felis eleifend eget gravida risus varius. Suspendisse in ipsum non justo pulvinar rutrum. Nunc eu sapien sed nisi luctus accumsan eget id justo. Donec quam mi, lobortis a elementum a, varius nec massa. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Aenean quam mi, congue et laoreet eu, dictum ac nisi. Nam tempor arcu eu augue pharetra mollis. Proin eu libero sapien, vitae suscipit tortor. Curabitur placerat viverra mi a iaculis. Ut pretium, nulla at tristique dignissim, risus metus imperdiet neque, adipiscing pretium nisl eros eu neque. Vestibulum id arcu in ligula porttitor volutpat. Donec id arcu vitae orci molestie laoreet. Nulla lobortis, augue in pellentesque mollis, quam risus ultricies felis, a rutrum quam justo vitae sapien. Duis vulputate, leo eget aliquet tristique, metus nulla dapibus justo, non tristique nisl tellus vel nisi.</p> | |
<script src="http://ajax.googleapis.com/ajax/libs/dojo/1.5/dojo/dojo.xd.js"></script> | |
<script> | |
dojo.ready(function(){ | |
// DOM and requires() ready | |
var badWords = [ | |
"bush", "terror", "terrorist", "bomb", "iran" | |
]; | |
function completelyRandom(){ | |
return Math.random() > 0.75; | |
} | |
function block(length){ | |
var ret = [], ch = "\u2588"; | |
while(length--){ | |
ret.push(ch) | |
} | |
return ret.join(""); | |
} | |
function chenify(n){ | |
var words = n.textContent.match(/\w+/g); | |
dojo.forEach(words, function(word){ | |
if(~dojo.indexOf(badWords, word.toLowerCase()) || completelyRandom()){ | |
var re = new RegExp(word, "i"); | |
n.textContent = n.textContent.replace(re, block(word.length)); | |
} | |
}); | |
console.log(words); | |
} | |
function scanchildren(node){ | |
dojo.forEach(node.childNodes, function(n){ | |
if(n.nodeType == 3){ | |
chenify(n); | |
}else{ | |
scanchildren(n); | |
} | |
}); | |
} | |
dojo.NodeList.prototype.cheney = dojo.NodeList._adaptAsForEach(scanchildren); | |
dojo.query("p").cheney(); | |
}); | |
</script> | |
</body> | |
</html> |
Author
phiggins42
commented
Apr 1, 2019
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment