Um simples script para homenagear as mães de todos os programadores.
A Pen by John Murowaniecki on CodePen.
Um simples script para homenagear as mães de todos os programadores.
A Pen by John Murowaniecki on CodePen.
| <person name="Amélia"> | |
| <person name="Joaquim"></person> | |
| <person name="Ana Maria"> | |
| <person name="Nicholas"></person> | |
| <person name="Stefanie"></person> | |
| <person name="Andrew"></person> | |
| </person> | |
| <person name="Jacinto"></person> | |
| <person name="Regina"> | |
| <person name="John"></person> | |
| </person> | |
| </person> | |
| <person name="Zara"> | |
| <person name="Ana"></person> | |
| <person name="Lucas"></person> | |
| <person name="Duda"></person> | |
| </person> |
| function mãe_só_tem_uma(filho_programador) { | |
| var mãe = filho_programador.parentNode; | |
| return [(mãe.de(filho_programador) | |
| ? ("Feliz dia das mães, %mamãe%!!" | |
| .troca("%mamãe%") | |
| .por(mãe.attributes.name.value)) : ''), | |
| ("Obrigado por todos aqueles \"bla-bla-bla\"." | |
| .troca("bla-bla-bla") | |
| .por( | |
| (function tudo_aquilo_que(as_mães) { | |
| return as_mães.sempre_dizem(); | |
| }([ | |
| "bota um casaquinho", | |
| "leva o guarda-chuva!", | |
| "já tomou o remédio?" | |
| ]) | |
| ))) | |
| ].join(" "); | |
| } | |
| var persons = document.querySelectorAll("person"), | |
| look_for_mamma = function (e) { | |
| e.preventDefault(); | |
| e.stopPropagation(); | |
| alert(mãe_só_tem_uma(this)); | |
| }; | |
| for (var person in persons) { | |
| if (persons.hasOwnProperty(person)) { | |
| persons[person].onclick = look_for_mamma; | |
| } | |
| } | |
| String.prototype.troca = function(t) { | |
| this.replace_string = t; | |
| return this; | |
| } | |
| String.prototype.por = function(t) { | |
| return this.replace(this.replace_string, t); | |
| } | |
| Array.prototype.sempre_dizem = function() { | |
| return this[parseInt(Math.random() * this.length)]; | |
| } | |
| Node.prototype.de = function(f) { | |
| return this.nodeName === f.nodeName; | |
| } |
| person { | |
| display: block; | |
| min-height: 30px; | |
| min-width: 20px; | |
| margin: 3px; | |
| padding: 5px; | |
| background: #FFF; | |
| border: 1px solid white; | |
| } | |
| person:not(:empty) { | |
| background: #FEE; | |
| } | |
| person:not(:empty):before { | |
| background: url("data:image/gif;base64,R0lGODlhEwATAOcAAP////P58PL57//w8P/v7/vu6/vt6v3r6/3q6v//APvn5/vm5v/i4vni4v/g4P/2AP/f39nsz/ng4Nns0Pjd2PzY2Mzlv//Q0P/Pz/jOzsDfsL/fr/TMxP/FxfrExPPFxf/AwLPZoP+/v7LZn//PAPC8sabTkPO2tvixsf+wsP+/AJnMgJnMf/+oqO2oqP+wAJPJUf+fn/+vAI3GcIzFb9arjPCgoOifjoPBZIC/YL+oeP+QkP+Pj86fevSOjnO5UOSRfeePj7OdZGazQMeSaPJ9faaTUf9/AFmsMOh6ev+AAP9wcNqDAFOpAE2mIP9kZORoaP9hYf9gYP9oAECfENlqTtlqTa13OttkZO5oAICDJNtoADOZAKVxLXOCGZF7AP9RUcZoAGeCEO1OTu1NTUyGAJ1qIdVRUV94AGN1AP9AQH9gAIJeAP8wMNg6Otk5OZpMAP8kJMY2C/8jI/8gIP8gAP8fAMEvAcEuAMwmAMMkJMMjI9kdAP8QEP8PAP8QAOUTAOQLC/8BAf8AAKYWAOIAAOIBAcUGBsIAAKUBAZ8AAP///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////yH5BAEHAP8ALAAAAAATABMAAAiyAP8JHDhQzSA1BBMSbDMoxqCHMfrQIaBQ4IWHGDOCqChQyqA6LxK8qDOoDcd/BgepSMBSxUOECiFgZEkTI4SKKVe2fMlxgEM7MhLIsDNIykmZGTX27FMU45JBfRycHHBhQJ6DVKVWREKFRYEbXMrcoHDyHxUuXJAIQGvk3wYnSCquQMvlB1oTI9A64YiELtoIdDVwDGCXbuEQZSdo6MuFyo8JZf9NCJBD74oZkf9RtqwwIAA7") no-repeat; | |
| /* Nós queremos um buquê.. Um buquê bem bonito de flores.. Para mamãe! Para mamãe!! Mas não tendo encontrado um buquê a rigor a mamãe vai ganhar uma flor! */ | |
| color: red; | |
| padding-left: 20px; | |
| } | |
| person:before { | |
| content: attr(name); | |
| } |