Событие хорошо срабатывает на селекторе с подстановочными знаками, но происходит сбой, если я использую определенный идентификатор для селектора.
Это работает:
$("*").click ->
console.log "entered event."
$("#tellafriend").dialog
modal: true
buttons:
Ok: ->
$(this).dialog "close"
Тем не менее, это не:
$("#tell-a-friend").click ->
console.log "entered event."
$("#tellafriend").dialog
modal: true
buttons:
Ok: ->
$(this).dialog "close"
И мой соответствующий HTML:
<ul class="actions">
<li><a href="#">Home</a></li>
<li>|</li>
<li><a href="#" id="tell-a-friend">Tell a Friend</a></li>
</ul>
Я что-то упустил в CoffeeScript, чтобы это работало? Может быть, селекторы jQuery отформатированы по-разному в CoffeeScript?
Это обработанный Javascript, который обслуживает мое приложение (Rails конвертирует CoffeeScript в JS при обслуживании страниц):
(function() {
$("#tell-a-friend").click(function() {
console.log("works");
return $("#tellafriend").dialog({
modal: true,
buttons: {
Ok: function() {
return $(this).dialog("close");
}
}
});
});
}).call(this);