Open jbull477 opened 9 years ago
:+1: Looks good, though a few items of note:
()
).this
in CoffeeScript, the alias @
is more typically used for brevity.onClick
events. I have a refactor below that uses unobtrusive JavaScript.class ScandinavianAlerter
ALERTS = [
'Norwegian: Du har blitt varslet'
'Swedish: Du har varnats'
'Danish: Du er blevet advaret'
]
constructor: (target) ->
$(target).on 'click', ->
alert random_alert()
random_alert = ->
ALERTS[ Math.floor( Math.random() * ALERTS.length ) ]
$ ->
new ScandinavianAlerter '.scandinavian-alerter'
This translates to the following JavaScript:
var ScandinavianAlerter;
ScandinavianAlerter = (function() {
var ALERTS, random_alert;
ALERTS = ['Norwegian: Du har blitt varslet', 'Swedish: Du har varnats', 'Danish: Du er blevet advaret'];
function ScandinavianAlerter(target) {
$(target).on('click', function() {
return alert(random_alert());
});
}
random_alert = function() {
return ALERTS[Math.floor(Math.random() * ALERTS.length)];
};
return ScandinavianAlerter;
})();
$(function() {
return new ScandinavianAlerter('.scandinavian-alerter');
});
<button class="scandinavian-alerter">Learn how to say "You have been alerted" in Scandinavian languages!</button>
@chrisvfritz I think I'm done