当某个dom元素进入视口时改变音轨
changing audio track when a certain dom element enters viewport
这是一个代码依赖,说明根据视窗显示的内容改变音乐:
http://codepen.io/littleredbowtie/pen/epONpM一首歌曲是由顶部的元素触发的,而另一首歌曲是在滚动到底部时触发的。然而,如果你从顶部滚动到中间,然后再回到顶部,第一首歌就会重新开始。因为它是相同的DOM元素进入视口,我不想重置音乐。我尝试使用变量来跟踪最近查看的触发器,例如:
var oldInview = "";
,只有在音乐不同的情况下才改变音乐。但正如你从代码中看到的,它不起作用。推荐的解决方案是什么?
与其将$('p.inview1').bind(...)
包装在if中,不如将&& oldInview !== 'view1'
添加到if (visible)
中。这可以确保在oldInvew === 'view1'
情况下,尽管事件被触发并检测到,但不会再次调用任何内容。
$('p.inview1').on('inview', function (event, visible) {
if (visible && oldInview !== "view1"){
$(this).text('Yay! You can see me1!');
myFunctionT1();
oldInview = "view1";
} else {
$(this).text('Hidden again. Muhahah!');
myFunctionP1();
}
});
相关文章:
- 将视口底部滚动到元素底部
- 使用JavaScript根据窗口/视口的高度动态调整图像大小
- 使用条件语句,使 jquery fadeIn/fadeOut 仅在视口 >= 480px 时才有效
- 宽度为100%的CSS元素位于视口之外
- CSS3:当页面向下滚动到第一个视口时,是否可以在元素上触发转换
- 如何设置浏览器视口大小
- Javascript em根据窗口/视口尺寸调整大小,不影响文档样式的text/css
- 检测视口并重定向到不同的主页
- 如何在按住鼠标按钮且光标在视口外时检测鼠标离开
- iOS iPad平板电脑渲染视口不正确
- 移动设备上的视口问题
- 视口大小更改时自动刷新页面
- 在移动设备上获取视口大小
- 在 ReactJS 中获取视口/窗口高度
- 使jquery延迟加载插件在视口内工作
- Div 设置为视口高度,即使调整屏幕大小也是如此
- 视口比例;方向改变后不能工作
- 当某个dom元素进入视口时改变音轨
- 改变视口引导中的类
- 根据视口大小改变iframe中的SRC