javascript - 我可以让 window.postrender = function 再次运行 window.onload = function 吗?
问题描述
所以我制作了包含在某种播放器中的页面。每隔 10-45 秒,播放器就会运行一个 postrender 函数,该函数会在我的页面之外调用一堆函数,但我可以添加其他函数来调用。所以我的问题是,当播放器调用 postrender 时,我的 onload 函数也会触发,因此我的页面将重置回起始位置,我该如何做到这一点?这样在循环中每次都是新鲜的,来自前一个人的任何交互都会消失。
这是代码现在看起来的示例。
window.postrender = function() {
//: I can put any additional functions in here
$('#splash').removeClass('hidden');
};
window.onload = function initial() {
//: All of my default starting code
};
解决方案
由于您想在两个地方执行相同的操作集,只需重构该部分即可:
function initialize() {
// common initialization code
}
function postRender() {
initialize();
// more code specific to postRender
$('#splash').removeClass('hidden');
}
window.addEventListener("load", initialize);
推荐阅读
- powershell - 如何在powershell Get-Content中包含多个-notmatch项目
- hikaricp - 为什么 HikariCp 在 PCF 环境中创建 2 个池?
- ruby-on-rails - Rake db:migrate 不在 Google Cloud SQL 上创建表
- java - JTable 日期过滤器无法正常工作
- css - Internet Explorer 为弹性框添加了额外的填充。怎么修?
- java - 如何在 Java 中为 MaxHeapPriorityQueue 编写 sortRemove 方法?
- javascript - 具有多个函数的处理程序中的“类型错误:lambda 不是函数”
- python - PyCharm - 如何摆脱“未定义的步骤参考”警告
- git - 我怎样才能对签出相同存储库的 git 子模块进行重复数据删除?
- reporting-services - SSRS:动态选择数据集/查询