javascript - 如何手动调度 hashchange 事件

标签 javascript

1 - WebKit 的正确语法是什么(主要用于 iPad 上的 Safari,如果它适用于 Win Chrome 则很好)到 .addEventListenerhashChange事件?

2 - 是否可以(以及如何)通过 .dispatchEvent 手动/以编程方式调度 hashChange 事件在上面提到的浏览器上?

TIA。

我找到了1的答案:
window.addEventListener("hashchange", function() {console.log(location.hash)});
但是我仍然不知道如何发送hashchange手册,因为我不知道是什么 EVENTOBJECT我应该转给 window.dispatchEvent(EVENTOBJECT) .

最佳答案

如果你想在不改变哈希值的情况下强制 hashchcange 事件,你应该调用:

window.dispatchEvent(new HashChangeEvent("hashchange"))

传递给事件处理程序的对象将具有以下可用 Prop :
String oldURL;
String newURL;

这是我发现的唯一信息:

https://github.com/WebKit/webkit/blob/master/Source/WebCore/dom/HashChangeEvent.h

在这里收到答案后:

http://forum.php.pl/index.php?showtopic=213470

关于javascript - 如何手动调度 hashchange 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15035217/

相关文章:

javascript - 在 Iframe 中加载 html 并访问 DOM

javascript - 通过另一个下拉列表 Id ASP.Net 过滤下拉列表

javascript - 向我的向导步骤 Jquery 代码添加第三步

javascript - .retrieve() 中的第二个参数;总是运行?

javascript - lessc 使用 Ruby 而不是 Javascript

javascript - google.visualization.Calendar 中的对数色阶?

javascript - 如何检测 html web 应用程序中的滑动原点位置?

javascript - 文档头部允许的最大数量 <script> 标签是多少?

javascript - 将 FormData 从 Trigger.io Forge 上传到 Amazon S3

javascript - 具有多个更新路径的 Backbone 用户模型