当另一个按钮已经被点击时,如何才能使 div 仅 'activate'?
How can I make a div only 'activate' when another button has already been clicked?
我想弄清楚如何让弹出窗口仅在单击按钮后显示。我在计时器上有一个弹出窗口 div,但我只想在单击此按钮后启动计时器。有没有人对我如何实现这一目标有任何想法?
所以我在顶部有这个按钮可以打开这个框,其中包含一个自动播放的 HTML5 视频;并且我希望其中带有弹出窗口的 div 仅在单击该按钮后启动其显示时间的计时器(以便播放视频)。
<button class="modal-open" >Begin Experience</button>
<div class="modal-box">
<video class="fs-video" preload="auto" >
<source class="fs-video" src="videos/scene1_option1a.mp4" type="video/mp4" >
</video>
</div>
<!--This is the popup code -->
<div class="timer">
<div class="modal">
<p class="message">Look at this fancy pop-up</p>
<div class="options">
<a href="test.html">
<button class="btn">Yes</button>
</a>
<a href="test.html">
<button class="btn">No</button>
</a>
</div>
</div>
</div>
<!--end of popup code -->
这是我用来制作计时器的css:
.timer{
animation: cssAnimation 0s 5s forwards;
visibility: hidden;
}
@keyframes cssAnimation {
to { visibility: visible; }
}
这对任何人都有意义吗?非常感谢!
有些属性不是 "transitionable" - 例如,可见性只有 2 个状态 - 可见或隐藏,没有介于两者之间的比例。这样的动画不会有预期的效果。
通过使用不透明度,您可以确保干净的过渡,因为可以增加不透明度 属性。
只要 JavaScript 一点点,您就可以听到对按钮的点击。
let button = document.querySelector( "#button" );
button.addEventListener( "click", function( e ) {
let timer = document.querySelector( ".timer" );
timer.classList.toggle( "active" );
});
.timer {
opacity: 0;
}
.timer.active {
animation: cssAnimation 1s forwards;
}
@keyframes cssAnimation {
from {
opacity: 0;
}
to {
opacity: 1;
}
}
<button class="modal-open" id="button">Begin Experience</button>
<div class="modal-box">
<video class="fs-video" preload="auto" >
<source class="fs-video" src="videos/scene1_option1a.mp4" type="video/mp4" >
</video>
</div>
<!--This is the popup code -->
<div class="timer">
<div class="modal">
<p class="message">Look at this fancy pop-up</p>
<div class="options">
<a href="test.html">
<button class="btn">Yes</button>
</a>
<a href="test.html">
<button class="btn">No</button>
</a>
</div>
</div>
</div>
<!--end of popup code -->
我想弄清楚如何让弹出窗口仅在单击按钮后显示。我在计时器上有一个弹出窗口 div,但我只想在单击此按钮后启动计时器。有没有人对我如何实现这一目标有任何想法?
所以我在顶部有这个按钮可以打开这个框,其中包含一个自动播放的 HTML5 视频;并且我希望其中带有弹出窗口的 div 仅在单击该按钮后启动其显示时间的计时器(以便播放视频)。
<button class="modal-open" >Begin Experience</button>
<div class="modal-box">
<video class="fs-video" preload="auto" >
<source class="fs-video" src="videos/scene1_option1a.mp4" type="video/mp4" >
</video>
</div>
<!--This is the popup code -->
<div class="timer">
<div class="modal">
<p class="message">Look at this fancy pop-up</p>
<div class="options">
<a href="test.html">
<button class="btn">Yes</button>
</a>
<a href="test.html">
<button class="btn">No</button>
</a>
</div>
</div>
</div>
<!--end of popup code -->
这是我用来制作计时器的css:
.timer{
animation: cssAnimation 0s 5s forwards;
visibility: hidden;
}
@keyframes cssAnimation {
to { visibility: visible; }
}
这对任何人都有意义吗?非常感谢!
有些属性不是 "transitionable" - 例如,可见性只有 2 个状态 - 可见或隐藏,没有介于两者之间的比例。这样的动画不会有预期的效果。
通过使用不透明度,您可以确保干净的过渡,因为可以增加不透明度 属性。
只要 JavaScript 一点点,您就可以听到对按钮的点击。
let button = document.querySelector( "#button" );
button.addEventListener( "click", function( e ) {
let timer = document.querySelector( ".timer" );
timer.classList.toggle( "active" );
});
.timer {
opacity: 0;
}
.timer.active {
animation: cssAnimation 1s forwards;
}
@keyframes cssAnimation {
from {
opacity: 0;
}
to {
opacity: 1;
}
}
<button class="modal-open" id="button">Begin Experience</button>
<div class="modal-box">
<video class="fs-video" preload="auto" >
<source class="fs-video" src="videos/scene1_option1a.mp4" type="video/mp4" >
</video>
</div>
<!--This is the popup code -->
<div class="timer">
<div class="modal">
<p class="message">Look at this fancy pop-up</p>
<div class="options">
<a href="test.html">
<button class="btn">Yes</button>
</a>
<a href="test.html">
<button class="btn">No</button>
</a>
</div>
</div>
</div>
<!--end of popup code -->