Wie der Titel, vielleicht ist er nicht ganz klar.
Es besteht eine Nachfrage. „Xiao Hu, unser Produkt muss eine neue Funktion hinzufügen, nämlich die Möglichkeit, gut geschriebene H5-Seiten anzuzeigen oder den Benutzern eine Webseitenanzeige bereitzustellen.“ eine bestimmte Nachrichten-Website.“
Ich dachte, da ich so etwas Schurken machen möchte, habe ich in der Vergangenheit iframe zum Einbetten von Seiten Dritter verwendet, also könnte ich das genauso gut verwenden, und ich habe kein anderes gefunden Methoden.
Dann kommt das Problem, wenn eine Nachrichten-Website es beispielsweise einbettet, wendet es sich gegen den Kunden und tötet meine HTML-Seite direkt! Nach unermüdlichen Bemühungen wurde festgestellt, dass die Webseite einen „Anti-Operator-Hijacking-Code“ enthielt; der Code lautet wie folgt:
Kann mir irgendein Meister helfen, es zu knacken?
Folgende Methoden wurden verwendet:
//在主窗口的
标签前面添加 //或者:
Allerdings gibt es keine Eier. . .
一楼答主所言极是;
目前的解决方案是通过ifram的“沙盒属性”sandbox来禁止跳转;
所有主流浏览器都支持 sandbox 属性。但IE 9 以及更早的版本不支持 sandbox 属性,Opera 12 以及更早的版本也不支持该属性。
如果您要兼容IE8及以下,请忽略答案!!!
iframe的sandbox属性及值:
不设置allow-top-navigation就不会被强制跳转了!!!
当然,你会发现不跳转但是页面内容不显示,以xw.qq.com为例,你会发现是因为iframe中的html被设置了"display:none";
在pc端暂时没找到解药
报错跨域!!
正常界面(android webview中的前端页面):
代码(自行调试,pc绕过!):
var iframe = document.createElement("iframe");