【发布时间】:2013-12-11 17:14:01
【问题描述】:
我正在尝试通过 jQuery 暂停三个视频。出于某种原因,我的代码在使用 .get() 方法时只选择第一项,但是当我使用 .css() 方法时,所有相关元素都被选中。有人可以帮我理解为什么吗?
这是html:
<div id="myCarousel" class="carousel slide">
<div class="item action"><video src="video1.MOV"></video></div>
<div class="item"><video src="video2.MOV"></video></div>
<div class="item"><video src="video3.MOV"></video></div>
</div>
这是使用 .get() 方法的 jquery,它只影响第一个视频(“video1.MOV”):
$('div.carousel-inner .item').children("video").get(0).pause();
使用 .css() 方法,我能够选择具有 class="item" 的元素:
$('div.carousel-inner .item').children("video").css( "background-color", "red" );
谁能帮我理解为什么只有第一个视频被暂停?我想修改 jQuery 以暂停所有视频。谢谢!
【问题讨论】:
-
.get(0)将第一个元素作为普通 DOM 元素返回,而.get(4)返回第五个元素,get()返回所有元素等,您阅读文档了吗?一些 jQuery 方法仅适用于集合中的第一个元素,因为在内部对这些方法进行迭代是没有意义的。 -
adeneo - 我了解 .get() 方法,但没有意识到某些 jQuery 方法仅适用于集合中的第一个元素。感谢您的确认。
标签: jquery html css html5-video