iOS:在页面内插入带 SRC 的 iFrame 会立即在 Safari 中打开 url
iOS: inserting iFrame with SRC inside the page immediately opens the url in Safari
我有一个很奇怪的问题。这发生在 Cordova(混合 HTML)应用程序中,但仅限于 iOS.
我的 HTML 页面已经有一些内容,没关系。
紧接着,我从远程页面检索了一些 HTML,然后将此 HTML 插入到我的主 HTML 页面中。如果有指定了 SRC 属性的 iFrame,系统会立即在 safari/a 特定应用程序中打开该 SRC,但我只想将内容作为普通 iFrame 插入!
例子。如果我检索这个 HTML:
<iframe src="https://www.youtube.com/watch?v=dQw4w9WgXcQ">
假设我将这个 HTML 元素保存在变量 foo 中。只要我这样做:
document.getElementById("XXX").appendChild(foo);
iOS 立即打开 youtube 应用程序。没有用户交互,没有触发器,什么都没有。只需在页面中插入 iFrame。
指定的任何其他 SRC 也会发生同样的情况。
我试图用一个假属性替换“src”属性,比如“data-src”,在页面中插入 iFrame,然后立即放回原始 SRC。一旦我这样做,同样的事情就会发生。
您是否知道造成这种情况的原因以及如何实施解决方法? Android 一切正常。
P.S.: 如果重要的话,我正在使用 wkwebview。
我做到了!该死的,如果那是一个愚蠢的错误!
在我的 config.xml 中,我忘了放这个
<allow-navigation href="*" />
这阻止了所有内容在我的网络视图中播放,作为备用选项,iOS 试图在另一个浏览器(例如 Safari)上打开 iframe URL。
无论如何谢谢埃里克!我想我浪费了 50 个赏金点:(
我有一个很奇怪的问题。这发生在 Cordova(混合 HTML)应用程序中,但仅限于 iOS.
我的 HTML 页面已经有一些内容,没关系。 紧接着,我从远程页面检索了一些 HTML,然后将此 HTML 插入到我的主 HTML 页面中。如果有指定了 SRC 属性的 iFrame,系统会立即在 safari/a 特定应用程序中打开该 SRC,但我只想将内容作为普通 iFrame 插入!
例子。如果我检索这个 HTML:
<iframe src="https://www.youtube.com/watch?v=dQw4w9WgXcQ">
假设我将这个 HTML 元素保存在变量 foo 中。只要我这样做:
document.getElementById("XXX").appendChild(foo);
iOS 立即打开 youtube 应用程序。没有用户交互,没有触发器,什么都没有。只需在页面中插入 iFrame。 指定的任何其他 SRC 也会发生同样的情况。
我试图用一个假属性替换“src”属性,比如“data-src”,在页面中插入 iFrame,然后立即放回原始 SRC。一旦我这样做,同样的事情就会发生。
您是否知道造成这种情况的原因以及如何实施解决方法? Android 一切正常。
P.S.: 如果重要的话,我正在使用 wkwebview。
我做到了!该死的,如果那是一个愚蠢的错误! 在我的 config.xml 中,我忘了放这个
<allow-navigation href="*" />
这阻止了所有内容在我的网络视图中播放,作为备用选项,iOS 试图在另一个浏览器(例如 Safari)上打开 iframe URL。
无论如何谢谢埃里克!我想我浪费了 50 个赏金点:(