Javascript 如何使用JQuery关闭此对话框?使用咖啡脚本?

Javascript 如何使用JQuery关闭此对话框?使用咖啡脚本?,javascript,jquery,ruby-on-rails,ruby-on-rails-3,coffeescript,Javascript,Jquery,Ruby On Rails,Ruby On Rails 3,Coffeescript,我正在组装一个新的应用程序,虽然我通常使用JQuery处理类似的事情,但我想将它与Coffeescript进行比较,并选择正确的方法。此外,我想确保我了解如何使用coffeescript正确调用JQuery 该对话框位于以下div中: <div class="alert-message error"> <a class="close" href="#">X</a> <p>Here is some error text</p> &

我正在组装一个新的应用程序,虽然我通常使用JQuery处理类似的事情,但我想将它与Coffeescript进行比较,并选择正确的方法。此外,我想确保我了解如何使用coffeescript正确调用JQuery

该对话框位于以下div中:

<div class="alert-message error">
  <a class="close" href="#">X</a>
  <p>Here is some error text</p>
</div>

这里有一些错误文本

样式将在对话框的右边距上放置一个“X”。当用户单击“X”时,整个div需要消失

我将使用什么JQuery代码或Coffescript代码来关闭对话框?此对话框可以出现在网站的任何页面上。

尝试以下操作:

$('.close').click(function(){
  $(this).parent().hide(); //finds parent element of clicked .close and hides it
});
试试这个:

$('.close').click(function(){
  $(this).parent().hide(); //finds parent element of clicked .close and hides it
});

下面是使用coffeescript的samura代码

$('.close').click() ->
    $(this).parent().hide()

// or on 1 line
$('.close').click() -> $(this).parent().hide()

// fat arrow version, not 100% sure on this, typing from ipad
$('.close').click(e) => $(e.target).parent().hide()

以下是使用coffeescript的samura代码

$('.close').click() ->
    $(this).parent().hide()

// or on 1 line
$('.close').click() -> $(this).parent().hide()

// fat arrow version, not 100% sure on this, typing from ipad
$('.close').click(e) => $(e.target).parent().hide()

谢谢!绝对有效。我也希望得到同样的CoffeScript——有人吗?@Kevin要想让CoffeScript化,你所要做的就是用
->
替换
函数
,然后扔掉
{
花括号
}
。咖啡脚本的#1规则是“它只是JavaScript。”:)@Trevor谢谢。事实上,我就是这么做的,并且解决了这个问题。这是一个简单的例子,我真的希望我能看到不同的咖啡脚本方法的例子。[顺便说一句,你能通过我的推特与我联系吗?]谢谢!绝对有效。我也希望得到同样的CoffeScript——有人吗?@Kevin要想让CoffeScript化,你所要做的就是用
->
替换
函数
,然后扔掉
{
花括号
}
。咖啡脚本的#1规则是“它只是JavaScript。”:)@Trevor谢谢。事实上,我就是这么做的,并且解决了这个问题。这是一个简单的例子,我真的希望我能看到不同的咖啡脚本方法的例子。[顺便说一句,你能通过我的twitter与我联系吗?]我只有在你的第一行开头添加了一个领先的“jQuery->”后才能完成这项工作。所以一行应该是:jQuery->$(“.close”)。单击->$(this.parent().hide()@Kevin,那么JS版本也是如此。使用
jQuery->
(或者,相当于,
$->
…除非您正在做一些不寻常的事情,否则您会发现
$==jQuery
)只会确保在加载DOM之后运行您的代码,这样,当您生成
$(.close')时,页面HTML中的
.close
元素就存在了
selection。只有在第一行的开头添加了一个前导的“jQuery->”之后,我才能进行此操作。所以一行应该是:jQuery->$(“.close”)。单击->$(this.parent().hide()@Kevin,那么JS版本也是如此。使用
jQuery->
(或者,相当于,
$->
…除非您正在做一些不寻常的事情,否则您会发现
$==jQuery
)只会确保在加载DOM之后运行您的代码,这样,在进行
$('.close')
选择时,页面HTML中的
.close
元素就存在了。