首页 > 解决方案 > 通过事件监听器动态改变 URL

问题描述

我有一个基本上是 wiki 的网络应用程序。当内容显示在父窗口中时,有一个菜单栏,我正在通过服务器端代码呈现。

我想要做的是有时为此内容使用 IFRAME ......但是当在 IFRAME 中生成内容时,我不希望生成菜单栏。

最初定位 IFRAME .src时,我一直在向 URL 添加一个简单的“&frame=true”参数(我的服务器端代码读取此参数并且不生成菜单栏),但我的问题是在导航超链接这个“&frame=true”参数明显丢失的IFRAME......后续页面将再次出现菜单栏。

我想做的是使用事件处理程序拦截超链接点击(假设它是我的所有域),如果父级是 IFRAME,则将“&frame = true”参数添加到 URL,然后触发超链接和页面加载正常。

我可以动态正则表达式显示在 IFRAME 中的页面的 HTML 并添加“&frame=true”以确保后续的超链接点击不会生成此菜单......但寻找一种更优雅且计算量更少的方法。

标签: javascriptevent-handling

解决方案


推荐阅读