当前位置: 首页 > 知识库问答 >
问题:

历史使用fancybox时出现pushState错误“未能对“历史记录”执行“pushState”:历史记录”

左丘昕
2023-03-14

我正在使用“< code>fancy box”,并试图将我的url更改为< br > fancy box 的url,因此我尝试使用< code>History.pushState()。< br >但它会导致错误< br >错误:

            var _url = window.location.href;
            setInterval(function () {
                if (($(".fancybox-iframe").length > 0))
                   { 

                if(window.location.href != $('.fancybox-iframe').contents().get(0).location.href)
                {

                    history.pushState(null, null, $('.fancybox-iframe').contents().get(0).location.href);
                } 
                  }
                else 
                {
                  if(window.location.href != _url)
                  { 

                  history.pushState(null,null, _url);
                  } 

                }

            }, 80);

我会搜索它,但没有找到答案,请帮助我
或为我提供更好的解决方案
(我发现:Javascript history.PushState不起作用?但从答案中我不明白我的代码有什么错。)

共有1个答案

仲孙景胜
2023-03-14

< code>history.pushState有安全限制,其中之一是不允许应用程序将跨来源url推送到历史。这种显而易见的行为,你可以在你链接的问题中读到更多。

我不能向你推荐绝对正确的修理方法。这取决于你的应用逻辑。首先,您可以使用一个端口来执行您的代码。其次,您可以使用某种代理(如nginx)来监听两个端口。第三,可以推送相对路径(< code>/PerPage/content.php?d=1

 类似资料:
  • 我正在使用<code>窗口。JavascriptMVC应用程序中的历史记录,为每个控制器启用后退/前进/刷新功能。每次加载新控制器时,我都在使用<code>window.history。按下状态,将新状态添加到历史记录中。然后在返回/刷新时,我使用保存的状态并重用数据来再次构建控制器。 除了一个特定场景的问题外,整个想法都很好。我得到以下错误: 未能执行“pushState”“历史”:一个obj

  • 可确认下载失败或无法与互联网连接时等,最新的10件错误历史记录。 轻触列表的错误项目,会显示详细内容。部分项目还可确认建议解决方法。

  • 问题内容: 关闭。 此问题不符合堆栈溢出准则。它当前不接受答案。 想改善这个问题吗? 更新问题,使其成为Stack Overflow 的主题。 5年前关闭。 我正在研究使用HTML5历史记录API解决与AJAX加载的内容的深层链接问题,但我正在努力下手。有谁知道任何好的资源吗? 我想使用此方法,因为这似乎是允许发送那些链接可能未打开JS的可能性的好方法。当使用JS的人向不使用JS的人发送链接时,许

  • 我试图做我的第一个ReactApp,我得到了DataCloneError错误。 我有以下代码: 我想在单击按钮时触发方法showPost。 这是 showPost 方法: 我得到了这个错误DataCloneError:对“History”执行“pushState”失败:MouseEvent对象不能被克隆,我不知道如何修复它。 如果您能帮助我,我将不胜感激。

  • 读取播放历史信息 调用地址 http://api.bilibili.cn/history 返回 返回值字段 字段类型 字段说明 results int 返回的记录总数目 list object 返回数据 返回字段 “list” 子项 返回值字段 字段类型 字段说明 aid int 视频编号 typeid int 视频分类ID typename string 视频分类名称 title string

  • 历史记录 控制台维护 Elasticsearch 成功执行的最后500个请求列表。点击窗口右上角的时钟图标即可查看历史记录。这个图标会打开历史记录面板,您可以在其中查看历史请求。您也可以在这里选择一个请求,它将被添加到编辑器中当前光标所在的位置。 图 9. 历史记录面板