javascript - jQuery Mobile 在面板打开时重新加载 iFrame

标签 javascript jquery jquery-mobile iframe

我偶然发现了这个奇怪的问题,当我第一次打开面板时,jQuery 移动网站内容区域中的 iframe 会重新加载。任何后续打开都不会重新加载 iFrame。

您可以在这个 fiddle 中看到它的实际效果:http://jsfiddle.net/jakobgt1/Z3mmn/7/ (观察网络请求)。

<body>
<div data-role="page">
  <div id="nav-panel" data-role="panel">
    <a href="#my-header" data-rel="close">Close panel</a>
  </div>
  <div data-role="content">
      <a href= "#nav-panel" data-role="button">FooBar</a>
      <iframe src="http://gedefar.dk/"/>
  </div>
</div>
</body>

如果我用其他内容替换 iframe,则不会重新加载(例如图片 - http://jsfiddle.net/jakobgt1/GdKu2/1/ ):

<img src="http://dummyimage.com/200x200/000/fff"/>

我使用的是 jQuery 1.10.1、jQuery Mobile 1.4.0 RC-1。

这是一个错误,还是我错过了什么?

<小时/>

更新的答案:

通过将内容 div 包装在 ui-panel-wrapper div 内,iFrame 不会重新加载。 (请参阅原始 fiddle ,网址中只有 8 而不是 7,因为我不能发布两个以上的链接)

 <div class="ui-panel-wrapper">
   <div data-role="content">
       <a href= "#nav-panel" data-role="button">FooBar</a>
       <iframe src="http://gedefar.dk/"/>
   </div>
 </div>

雅各布

最佳答案

答案:

感谢 Omar,我意识到通过将内容 div 包装在 ui-panel-wrapper div 内,iFrame 不会重新加载,因为这不是由 jQuery mobile 完成的。 (请参阅原始 fiddle ,网址中只有 8 而不是 7,因为我不能发布两个以上的链接)。

<div class="ui-panel-wrapper">
 <div data-role="content">
   <a href= "#nav-panel" data-role="button">FooBar</a>
   <iframe src="http://gedefar.dk/"/>
 </div>
</div>

雅各布

关于javascript - jQuery Mobile 在面板打开时重新加载 iFrame,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20677293/

相关文章:

javascript - 初始化自定义类

javascript - 我需要将 jpages 与排序 javascript 结合起来

jquery - 奇怪的 jQuery 问题

php - 提交后表单不清空字段

javascript - Vue js vue cli3 应用程序在 ie11 中不起作用(babel 没有加载 polyfills?)

javascript - 在 Mongodb/Mongoose 聚合的子集中应用 $cond

javascript - 从 HTML 对象中检索值

jquery - 如何使用 jQuery 显示/附加更多记录以滚动到底部

javascript - 在 jQuery Mobile 中完成 ajax 导航时执行 javascript 代码

javascript - 为什么动态制作时行不是宽度的 100%?