只有在未与元素交互的情况下,我才能为其设置动画
How do I animate an element only if it has not been interacted with?
我想创建一个弹出窗口,当页面加载时它是可见的,但如果用户不与它交互,它将在一段时间后滑出屏幕。
这将使用jQuery,我已经找到了一个例子,但无法重新创建它
以下是示例站点:http://www.greatwolf.com/
你可以看到,如果没有与他们互动,他们的"预订住宿"弹出窗口将在几秒钟后关闭。但如果您在弹出窗口中选择了一个日期,它将不会关闭。
当然,我知道如何在延迟一段时间后制作动画。
$('.side-res-widget-trigger').delay(3000).animate({
left: parseInt($('.side-res-widget-trigger').css('left'),10) == 0 ?
-$('.side-res-widget-trigger').outerWidth() :
0
});
$('.side-res-widget').delay(3000).animate({
left: parseInt($('.side-res-widget').css('left'),10) == 0 ?
-$('.side-res-widget').outerWidth() :
0
});
但不确定如何在弹出窗口内部没有任何交互的情况下触发此操作。
您可以创建一个setTimeout()
事件和一个控制变量来查看是否"交互"。否则,setTimeout
将正常运行。类似于:
var interacted = false;
$('#myPopup').on("click", function() {
interacted = true;
});
setTimeout(function() {
if(!interacted) {
//Hide process
}
}, 3000);
如果'#myPopup'
是弹出元素,则任何交互都会触发click
事件。
相关文章:
- 如何设置html元素填充的动画
- 使用数据上的角度更改设置集合的第一个元素的动画
- 设置动画时,SVG/Raphael大圆圈会变形
- 在Jquery倒计时计时器上设置每个数字的动画
- 使用javascript可以设置css动画的当前百分比
- jQuery animate()函数没有't设置动画
- 如何设置自定义垂直滑块Jquery的动画
- 如何平滑地设置twitter引导程序进度条的动画
- 在EaselJS中设置精灵表动画时出现问题
- 对象获胜'如果qml中的其他地方定义了数字动画属性,则t设置动画
- 如何将高度动画设置为自动
- 替换后将动画设置为高度0
- 为什么动画设置加载在TweenMax中的两个单独的对象文字中
- 取消请求动画设置时间后的帧
- 在动画设置超时后执行函数
- 为什么Raphael.js的动画设置到不正确的坐标
- 如果动画设置为false,则Chart.js不会在Android Webview上显示
- 动画设置为浅黄色,然后返回白色?jQUery
- 三个js拼贴画动画设置时间
- 如何使用谷歌图表动画设置数值的动画?特别是Gauage