如何防止将iframe页面插入IE浏览历史记录中

Cor*_*ore 3 iframe internet-explorer browser-history

将iframe页面插入到IE9的浏览历史中我遇到了很多麻烦.这很痛苦,因为你必须多次点击才能进入上一页.这是什么原因?这是浏览器或页面中的错误吗?

编辑:我意识到我正在使用javascript来更新页面上所有iframe的源,以添加wmode = transparent属性.

$('iframe').each(function () {
    var url = $(this).attr("src")
    $(this).attr("src", url + "?wmode=transparent");
 });
Run Code Online (Sandbox Code Playgroud)

这被添加到战斗菜单导航正在YouTube视频背后.有没有办法阻止IE将这些事件插入历史记录?

Joe*_*ger 7

一个选项是替换iframe而不是更新源.

$('iframe').each(function () {
   var url = $(this).attr("src")
   //$(this).attr("src", url + "?wmode=transparent");

   url = url + "?wmode=transparent";

   var frm = document.createElement("iframe");
   frm.src = url;
   //copy attributes of this -> frm
   $(this).replaceWith(frm);
});
Run Code Online (Sandbox Code Playgroud)

在将iframe的src属性插入DOM后,只要修改了iframe的src属性,就会生成历史记录条目.如果您无法控制iframe(第三方iframe)的内容,那么如果他们以任何方式修改其页面的位置,则将创建历史记录条目.