我可以将hashChange侦听器设置为iFrame src吗?

fre*_*ent 3 javascript iframe jquery src hashchange

我想知道我是否有一个包含多个页面,iFrames如果我通过修改iFrame src属性进行通信,是否可以在src属性上设置hashChange监听器.

当然这必须在iFrame代码中,但尝试这个:

  $(document).ready(function () {  
    console.log(window);
    $(window).on('hashchange', function() {
      console.log("IFRAME HASH CHANGED");
    });
   });
Run Code Online (Sandbox Code Playgroud)

不会触发任何事情.

问题:有没有
想过这是否可行?如果没有,怎么办呢?

感谢您的投入!

nde*_*ore 6

上面的代码很好.在iframe的窗口上设置hashchange事件侦听器应该没有问题.问题是您正在查看父窗口的控制台.例如,如果将console.log更改为警报,您将看到它实际上正在运行.

如果您使用的是谷歌浏览器的开发人员工具,则可以单击此下拉列表在您所在的窗口上下文之间切换:

chrome developer tools的屏幕截图