javascript - 使用超时功能在 onreadystatechange 期间禁用滚动和触摸输入
问题描述
我这里有一些脚本作为网站的加载器/打开动画。
document.onreadystatechange = setTimeout(function() {
if (document.readyState !== "complete") {
document.querySelector(
"body").style.visibility = "hidden";
document.querySelector(
"#loader").style.visibility = "visible";
} else {
document.querySelector(
"#loader").style.display = "none";
document.querySelector(
"body").style.visibility = "visible";
}
}, 4000);
这很好用,但我注意到在执行上述脚本期间仍然可以滚动。我的问题是在这种情况发生时禁用滚动和触摸交互的最佳方法是什么,我将如何将它集成到我已经拥有的东西中?
解决方案
推荐阅读
- javascript - 使用 gulp 支持旧版浏览器
- react-native - 使用 Wix React Native Navigation (RNN) 时将属性从本机传递到 React Native
- excel - 为什么 CountA 会产生额外的行
- javascript - 如何使用备用值对 JavaScript DataTable 进行排序?
- tensorflow - TensorFlow1.13 无法使用 slice_input_producer
- arrays - 解析 JSON 字符串 Pyspark 数据框列,其中一列中有数组字符串
- google-chrome - 如何在谷歌浏览器中启用开发者模式(在 Mac 中)
- django-models - 如何使用选择选项输入字段(从下拉菜单中选择)根据其分类属性过滤模型实例
- c++ - 使用命名空间 std 的 C++“对重载函数的引用”错误
- apache-kafka - 关于Kafka Flink消费者并行性的问题