在链接 jQuery 之后如何再次引用第一个选定的元素?
After chaining in jQuery how to refer to the very first selected element again?
假设是这样的:
$(#element).parent().parent().find().click().XXXrefer-my-first-selector-againXXX()
我知道有一种方法 - 在链接之后 - 可以再次重新选择第一个元素,但我既不记得它,也不知道要搜索哪个关键字。
非常感谢!
您可能正在寻找 end
:
End the most recent filtering operation in the current chain and return the set of matched elements to its previous state.
在这种情况下,由于您有两个 parent
和一个 find
,因此您需要三个:
$("#element")
.parent()
.parent()
.find(/*...arg here...*/)
.click()
.end()
.end()
.end()
.doSomethingElseOnOriginalElement();
$("#element")
.parent()
.parent()
.find(".d")
.click()
.end()
.end()
.end()
.append("<span>- and we're back</span>");
<div class="a">a
<div class="b">b
<div class="c">c
<div id="element">element</div>
</div>
</div>
<div class="d">d</div>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
但坦率地说,在您引用的代码中,我只使用了一个变量:
var elm = $("#element");
elm.parent().parent().find(/*...arg here...*/).click();
elm.doSomethingElseOnOriginalElement();
假设是这样的:
$(#element).parent().parent().find().click().XXXrefer-my-first-selector-againXXX()
我知道有一种方法 - 在链接之后 - 可以再次重新选择第一个元素,但我既不记得它,也不知道要搜索哪个关键字。
非常感谢!
您可能正在寻找 end
:
End the most recent filtering operation in the current chain and return the set of matched elements to its previous state.
在这种情况下,由于您有两个 parent
和一个 find
,因此您需要三个:
$("#element")
.parent()
.parent()
.find(/*...arg here...*/)
.click()
.end()
.end()
.end()
.doSomethingElseOnOriginalElement();
$("#element")
.parent()
.parent()
.find(".d")
.click()
.end()
.end()
.end()
.append("<span>- and we're back</span>");
<div class="a">a
<div class="b">b
<div class="c">c
<div id="element">element</div>
</div>
</div>
<div class="d">d</div>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
但坦率地说,在您引用的代码中,我只使用了一个变量:
var elm = $("#element");
elm.parent().parent().find(/*...arg here...*/).click();
elm.doSomethingElseOnOriginalElement();