仅当存在特定元素时才将 class 添加到动态生成的 div - Slick Slider
Adding class to dynamically generated div only when specific elements are present - Slick Slider
我目前正在使用 Slick Slider by Ken Wheeler 在我网站的产品详情页面上显示特色图片和视频。我的问题是我需要定位其中包含视频的 .slick-slide,但我不确定该怎么做。
这是HTML
<div class="slick-slide slick-current slick-active" data-slick-index="5" aria-hidden="false" role="tabpanel" id="slick-slide05" style="width: 735px;" aria-describedby="slick-slide-control05">
<div class="product-video">
<video controlslist="nodownload" loop="" muted="" style="width: 100%; display: inline-block;">
<source src="https://media.djnetworks.net/media/static/dj-includes/images/video/2020/02/2466486_A.mp4" type="video/mp4">
Your browser does not support HTML5 video.
</video>
</div>
</div>
我能够定位内部 div 并添加 class .product-video(我需要),但还需要定位.slick-slide 并添加 class .video。这是我用来定位内部 div.
的内容
function addVideoClass() {
// Targets div contain video for mobile slider
$(".slick-slide > div:has(video)").addClass("product-video");
}
只是不确定如何同时定位外部 div .slick-slide。非常感谢提供的任何帮助。谢谢!
当您定位包含视频的 div 幻灯片时,您还可以链接回父级并添加 class 或在下一行添加 class.
示例 1:
// Targets div contain video for mobile slider
$(".slick-slide > div:has(video)").addClass("product-video").parent().addClass("video");
示例 2:
// Targets div contain video for mobile slider
$(".slick-slide > div:has(video)").addClass("product-video");
$(".slick-slide > div:has(video)").parent().addClass("video");
这里 example 显示了两个选项。
您可以查找 div 包含视频的 .slick-slide
$(".slick-slide:has(div:has(video))")
我目前正在使用 Slick Slider by Ken Wheeler 在我网站的产品详情页面上显示特色图片和视频。我的问题是我需要定位其中包含视频的 .slick-slide,但我不确定该怎么做。
这是HTML
<div class="slick-slide slick-current slick-active" data-slick-index="5" aria-hidden="false" role="tabpanel" id="slick-slide05" style="width: 735px;" aria-describedby="slick-slide-control05">
<div class="product-video">
<video controlslist="nodownload" loop="" muted="" style="width: 100%; display: inline-block;">
<source src="https://media.djnetworks.net/media/static/dj-includes/images/video/2020/02/2466486_A.mp4" type="video/mp4">
Your browser does not support HTML5 video.
</video>
</div>
</div>
我能够定位内部 div 并添加 class .product-video(我需要),但还需要定位.slick-slide 并添加 class .video。这是我用来定位内部 div.
的内容function addVideoClass() {
// Targets div contain video for mobile slider
$(".slick-slide > div:has(video)").addClass("product-video");
}
只是不确定如何同时定位外部 div .slick-slide。非常感谢提供的任何帮助。谢谢!
当您定位包含视频的 div 幻灯片时,您还可以链接回父级并添加 class 或在下一行添加 class.
示例 1:
// Targets div contain video for mobile slider
$(".slick-slide > div:has(video)").addClass("product-video").parent().addClass("video");
示例 2:
// Targets div contain video for mobile slider
$(".slick-slide > div:has(video)").addClass("product-video");
$(".slick-slide > div:has(video)").parent().addClass("video");
这里 example 显示了两个选项。
您可以查找 div 包含视频的 .slick-slide
$(".slick-slide:has(div:has(video))")