我正在开发一个jQuery函数,该函数将点击视频,其中包含特定于您点击的视频的div文本。为了获得交换效果,我想将一个带有-10 z-index的css类应用于单击的视频div。 ToggleClass工作一次并且不会切换回来(即,将视频div放回文本前面)。
HTML
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" type="text/css" href="style.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
</head>
<body>
<div class = "container">
<div id="box1" class = "box">
<div id="text1" class="text">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum ut suscipit magna, ac imperdiet diam. Pellentesque quis tellus et nisi luctus efficitur vitae in quam. In maximus aliquam dui sed vulputate. Duis sed urna in ipsum efficitur ultricies at sit amet ligula. Curabitur feugiat placerat velit a mollis. Phasellus ac mollis metus. Pellentesque condimentum urna eu ex vulputate semper. Fusce pulvinar, dui id convallis aliquam, elit lectus convallis tellus, sit amet semper lectus nisl vehicula enim. Curabitur est augue, pharetra non orci vitae, rutrum fermentum nunc. Curabitur a tempor elit, et fermentum erat. Etiam iaculis nulla vitae nisl pretium venenatis. Maecenas convallis placerat vestibulum. Duis vel interdum quam. Nunc ultricies elit ut dolor bibendum commodo. Nam mollis diam tellus, non imperdiet purus facilisis in.Aliquam vitae malesuada lacus, a eleifend justo. Mauris in condimentum nisi, vel pulvinar magna. Suspendisse nibh augue, scelerisque in suscipit id, interdum sed arcu. Cras semper varius ante. Integer mollis, tellus quis interdum porttitor, ipsum dui venenatis elit, ut luctus magna est eu ex. Praesent pretium purus nisi. Duis pharetra aliquet diam, sed tincidunt enim. Mauris nunc sapien, mattis sed tincidunt sed, bibendum id eros. Pellentesque velit arcu, viverra id ipsum vel, venenatis hendrerit purus. Ut auctor quis ligula non laoreet. Proin id porta sapien. Nunc et felis id augue ultricies sollicitudin eget pellentesque justo. Etiam magna neque, tincidunt a quam in, varius suscipit quam. Cras tincidunt feugiat ex sit amet interdum. Aliquam sagittis turpis eu pulvinar convallis. Donec imperdiet euismod nisl et faucibus.</div>
<div id="video1" class="video"> <video loop muted><source src=assets/IMG_1353.MOV></video></div>
</div>
<div id = "box2" class="box">
<div id="text2" class="text">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum ut suscipit magna, ac imperdiet diam. Pellentesque quis tellus et nisi luctus efficitur vitae in quam. In maximus aliquam dui sed vulputate. Duis sed urna in ipsum efficitur ultricies at sit amet ligula. Curabitur feugiat placerat velit a mollis. Phasellus ac mollis metus. Pellentesque condimentum urna eu ex vulputate semper. Fusce pulvinar, dui id convallis aliquam, elit lectus convallis tellus, sit amet semper lectus nisl vehicula enim. Curabitur est augue, pharetra non orci vitae, rutrum fermentum nunc. Curabitur a tempor elit, et fermentum erat. Etiam iaculis nulla vitae nisl pretium venenatis. Maecenas convallis placerat vestibulum. Duis vel interdum quam. Nunc ultricies elit ut dolor bibendum commodo. Nam mollis diam tellus, non imperdiet purus facilisis in.Aliquam vitae malesuada lacus, a eleifend justo. Mauris in condimentum nisi, vel pulvinar magna. Suspendisse nibh augue, scelerisque in suscipit id, interdum sed arcu. Cras semper varius ante. Integer mollis, tellus quis interdum porttitor, ipsum dui venenatis elit, ut luctus magna est eu ex. Praesent pretium purus nisi. Duis pharetra aliquet diam, sed tincidunt enim. Mauris nunc sapien, mattis sed tincidunt sed, bibendum id eros. Pellentesque velit arcu, viverra id ipsum vel, venenatis hendrerit purus. Ut auctor quis ligula non laoreet. Proin id porta sapien. Nunc et felis id augue ultricies sollicitudin eget pellentesque justo. Etiam magna neque, tincidunt a quam in, varius suscipit quam. Cras tincidunt feugiat ex sit amet interdum. Aliquam sagittis turpis eu pulvinar convallis. Donec imperdiet euismod nisl et faucibus.</div>
<div id="video2" class="video" > <video loop muted><source src="http://clips.vorwaerts-gmbh.de/VfE_html5.mp4"/></video></div>
</div>
</div>
</body>
<script>
$(document).ready(function(){
$(".box").find(".video").click(function () {
$(this).toggleClass("toggle");
});
});
</script>
<script>
$(document).ready(function () {
$(".video").hover(function () {
$(this).children("video")[0].play();
}, function () {
var el = $(this).children("video")[0];
el.pause();
});
});
</script>
</html>
CSS
.container {
margin: 10%;
}
.box {
background-color: blue;
}
#box1 {
border: dotted;
width: 700px;
height: 700px;
}
#box2 {
border: dotted;
width: 700px;
height: 700px;
}
.toggle {
z-index: -10;
}
.text {
font-size: large;
width: 700px;
position: absolute;
z-index: 0;
}
.video {
position: absolute;
}
video {
width: 700px;
}
答案 0 :(得分:0)
$(document).ready(function(){
$(".box").find(".video").click(function () {
$(this).toggleClass("toggle");
});
$(".box").find(".text").click(function() {
$(this).siblings(".video").toggleClass("toggle");
});
});
您可能会点击文本div,因此您发送到后面的视频div上没有注册点击。