Javascript 操纵其中一个?
我有一些标记,就像这样Javascript 操纵其中一个?,javascript,jquery,Javascript,Jquery,我有一些标记,就像这样 <div id="items"> <div class="item"></div> <div class="item"></div> <div class="item"></div> <div class="item"></div> </div> 有人能给我一个简单的解释如何使这项工作?我是否应该使用.each()?您希
<div id="items">
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
</div>
有人能给我一个简单的解释如何使这项工作?我是否应该使用.each()?您希望在处理程序函数中使用$(this)
而不是I
。处理程序的参数是,它包含有关事件的信息(例如单击事件的鼠标坐标等)。可能在i
中的某个地方是被单击的对象,但是使用this
可以更轻松地访问“被单击的对象”
您不必使用每个,因为jQuery会自动将处理程序绑定到查询”匹配的每个元素
编辑:按照中的说明,在该
周围添加了
$(…)
。(出于某种原因,它在没有$的情况下对我有效,但显然你需要它。)你想在处理函数中使用$(this)
而不是i
。处理程序的参数是,它包含有关事件的信息(例如单击事件的鼠标坐标等)。可能在i
中的某个地方是被单击的对象,但是使用this
可以更轻松地访问“被单击的对象”
您不必使用每个,因为jQuery会自动将处理程序绑定到查询”匹配的每个元素
编辑:按照中的说明,在该
周围添加了
$(…)
。(出于某种原因,没有美元的话,它对我有用,但显然你需要它。)你可以这样做:)
您可以这样做:)
是的,您可以使用每个,如下所示:
$(".item").each(function(){
//Here, use $(this) to reference current element
$(this).hide();
});
.each()
将传递的函数应用于匹配选择器中的每个元素,并引用当前元素
它有可选的参数和其他东西。在这里您可以了解更多信息:
希望这有帮助。干杯是的,每个都可以使用,如下所示:
$(".item").each(function(){
//Here, use $(this) to reference current element
$(this).hide();
});
.each()
将传递的函数应用于匹配选择器中的每个元素,并引用当前元素
它有可选的参数和其他东西。在这里您可以了解更多信息:
希望这有帮助。干杯(a)文档清楚地说明了事件处理程序的功能
(b) 与大多数jquery方法一样(所有异常都明确表示它们是异常),.click
将应用于jquery对象选择的集合的每个成员。因此,不需要,如果您希望它们中的每一个都安装了与事件处理程序相同的功能,则不需要使用。each
(c) this
或event.currentTarget
(或者在您的示例中,i.currentTarget
)是访问作为事件接收者的dom节点的方法<在您的示例中,代码>i将是事件对象。(a)文档清楚地说明了事件处理程序的作用
(b) 与大多数jquery方法一样(所有异常都明确表示它们是异常),.click
将应用于jquery对象选择的集合的每个成员。因此,不需要,如果您希望它们中的每一个都安装了与事件处理程序相同的功能,则不需要使用。each
(c)
this
或event.currentTarget
(或者在您的示例中,i.currentTarget
)是访问作为事件接收者的dom节点的方法<在您的示例中,代码>i将是事件对象。希望这能满足您的需要。让我们知道这是否有效,希望能有所帮助
$(".item").each(function(){
$(this).click(function () {
$(this).hide();
});
});
希望这能满足你的需求。让我们知道这是否有效,希望能有所帮助
$(".item").each(function(){
$(this).click(function () {
$(this).hide();
});
});
它也可以在没有任何限制的情况下工作
$(".item").click(function() {
$(this).hide();
});
它也可以在没有任何限制的情况下工作
$(".item").click(function() {
$(this).hide();
});
除非我弄错了,否则您不需要
每个
,因为jQuery会自动将操作应用于匹配的每个元素。仅当您确实想要在元素上循环时才需要每个元素(例如,如果您想要警报
每个元素,如上的示例所示)。另外,您不需要.bind('click',…)
;使用。单击(…)
,因为OP已经足够了,而且更干净。是的,我知道。我只是想,也许有人想知道指数。因此,此警报为注释。而绑定('click',…我之所以使用它是为了更好的可读性…我从昨天开始就没有这么做mgiuca:-)除非我弄错了,否则您不需要每个,因为jQuery会自动将操作应用于匹配的每个元素。仅当您确实想要在元素上循环时才需要每个元素(例如,如果您想要警报
每个元素,如上的示例所示)。另外,您不需要.bind('click',…)
;使用。单击(…)
,因为OP已经足够了,而且更干净。是的,我知道。我只是想,也许有人想知道指数。因此,此警报为注释。绑定('click',…我使用它是为了更好的可读性…我从昨天开始就没有这么做mgiuca:-)将隐藏每个项目,而不是像问题中的代码试图做的那样在每个项目上设置一个click事件处理程序。这将隐藏每个项目,而不是像问题中的代码那样在每个项目上设置单击事件处理程序。您将单击
(或等效的绑定
)更改为实时
?这会改变行为(live
使其自动绑定到与选择器匹配的任何对象),因此您应该有很好的理由这样做。另外,您不需要$(…)
围绕这个(这个
已经是一个jQuery对象)。实际上,忽略我所说的$。我不知道它是如何对我起作用的,但它显然对其他人不起作用,而且它需要显式地用$包装。首先我个人认为$(..)是必需的,其次我需要我们
$(".item").click(function() {
$(this).hide();
});