在div中找到第一次出现的类

Ami*_*mit 57 jquery

我有下面的html结构,我想找到第一个div的内部html,类使用jQuery作为"popcontent"

<div>
<div class="popContent">1</div>
<div class="popContent">2</div>
</div>
Run Code Online (Sandbox Code Playgroud)

Cod*_*aft 132

你会踢自己..... :)

$(".popContent:first").html()
Run Code Online (Sandbox Code Playgroud)

  • 请注意,`:first` 不能使用 `querySelectorAll()`,因此它会查询所有元素,然后获取第一个元素,如果元素数量很大,这可能会导致性能较差。 (3认同)

Hit*_*dha 16

div中第一次出现的类

$('.popContent').eq(0).html('value to set');
Run Code Online (Sandbox Code Playgroud)

div中第二次出现的类

$('.popContent').eq(1).html('value to set');
Run Code Online (Sandbox Code Playgroud)


Viv*_*vek 14

你可以:first在这种情况下使用选择器

$('.popContent:first').text();
Run Code Online (Sandbox Code Playgroud)

DEMO


raj*_*aur 8

$("div.popContent:first").html()
Run Code Online (Sandbox Code Playgroud)

应该给你第一个div的内容(在这种情况下为"1")


Buk*_*ksy 6

您可以使用document.querySelector()

返回文档中与指定选择器组匹配的第一个元素(使用文档节点的深度优先预序遍历|按文档标记中的第一个元素,并按子节点数量的顺序迭代顺序节点)。

由于它只查找第一次出现,因此它比 jQuery 具有更好的性能

var count = 1000;
var element = $("<span>").addClass("testCase").text("Test");
var container = $(".container");
var test = null;
for(var i = 0; i < count; i++) {
	container.append(element.clone(true));
}

console.time('get(0)');
test = $(".testCase").eq(0);
console.timeEnd('get(0)');
console.log(test.length);

console.time('.testCase:first');
test = $(".testCase:first");
console.timeEnd('.testCase:first');
console.log(test.length);

console.time('querySelector');
test = document.querySelector(".testCase");
console.timeEnd('querySelector');
console.log(test);
Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="container"></div>
Run Code Online (Sandbox Code Playgroud)

jsFiddle 版本的代码片段