我有一个 framework7 应用程序,我需要将外部页面加载到应用程序中。这意味着导航栏和所有内容都应该保留在顶部,但我应该能够在正文中显示外部 url 的内容。更像是应用内浏览器。
我尝试使用 iFrame,但它不适用于基于 https 的网址。有什么办法吗?
另请注意,如果我将external
类添加到锚标记中,则页面将在新窗口中打开。不在应用程序内。
我有一个 framework7 应用程序,我需要将外部页面加载到应用程序中。这意味着导航栏和所有内容都应该保留在顶部,但我应该能够在正文中显示外部 url 的内容。更像是应用内浏览器。
我尝试使用 iFrame,但它不适用于基于 https 的网址。有什么办法吗?
另请注意,如果我将external
类添加到锚标记中,则页面将在新窗口中打开。不在应用程序内。
使用 AJAX 将 html 插入到您的页面中。使用 Javascript,您可以将“外部”页面 (EXTERNALPAGE.php) 加载到<div>
您选择的页面 (PAGEPlaceholder) 中。
以下是建议代码的摘要,这不是一个工作示例...
您的 HTML 可能如下所示:
<div data-page="PAGENAME" class="page navbar-through toolbar-through">
<div class="navbar ">
<div class="navbar-inner">
<div class="left"></div>
<div class="center sliding">Page Title</div>
<div class="right"></div>
</div>
</div>
<div class="page-content ">
<div id="PAGEPlaceHolder"></div>
</div>
...
JS 可能看起来像这样:
myApp.onPageInit('PAGENAME', function (page) {
$$.get('EXTERNALPAGE.php', {}, function (data) {
$$('#PAGEPlaceHolder').html(data);
});
});
我尝试使用$$.get
,但它包含了他们的css,这弄乱了我的东西,所以我最终使用iframe将其隔离在弹出窗口中。
$$(document).on('click', '.open-popup', function (e) {
var link = this.data("url");
var iframe = '<iframe width="100%" style="height: 100em;" src="http://cors.io/?u=' + link + '" frameborder="0"></iframe>';
$$('.popup-body').html("Loading...");
$$('.popup-body').html(iframe);
app.popup('.popup');
});