jquery - addClass 在 iphone Chrome 上不起作用
问题描述
// changing navbar background-color by scrolling
$(window).scroll(function() {
if ($(this).scrollTop() > 20) {
$("#tab-nav").addClass("tab-scroll");
} else {
$("#tab-nav").removeClass("tab-scroll");
}
});
.tab-scroll {
background-color: rgb(255, 255, 255) !important;
}
以上是我的 jquery 和 CSS 代码。我想在导航栏达到一定高度时更改其背景颜色,该代码适用于桌面上的每个浏览器,它也适用于 iPhone safari。但它不适用于 iPhone chrome。你们能帮我修一下吗?有什么技巧可以使代码与任何浏览器兼容吗?
感谢
解决方案
使用Vanilla JS
:
function scrollFunctions() {
var
pageY = window.pageYOffset,
tab = document.getElementById('tab-nav');
/** @Sticky Header **/
if (pageY > 20) {
tab.classList.add('tab-scroll');
}
else if (pageY <= 20) {
tab.classList.remove('tab-scroll');
}
}
window.addEventListener('scroll', function () {
scrollFunctions();
});
推荐阅读
- javascript - 在组件内部调用组件本身
- javascript - 遍历对象数组以获取值
- css - 如何使用 CSS 渐变生成图像/SVG 文件
- r - 在条形图中使用新调色板时删除 R 中的原始颜色轮廓
- javascript - NestJS 在用玩笑测试方法之前访问私有类字段
- spring-boot - 没有时间的日期字段的Spring Boot查询
- java - 有没有办法使用 ADB 命令而不是设备策略管理器将应用程序列入锁定任务模式的白名单?
- python - 如何将数据发送到服务器进行预测 - MLflow
- expression - OWL-S 前置条件表达式提取
- powershell - 解决 powershell 中的“CommandNotFoundException”错误,脚本从该位置删除?