jquery移动iframe滚动问题,当点击链接时

时间:2013-12-20 11:38:41

标签: jquery-mobile iframe scroll

我遇到了jQuery Mobile的一个奇怪问题,当点击iFrame中的链接并滚动时,父HTML文档中的持久标题会随着滚动而上下移动。有趣的是,这种行为只发生在jQuery mobile在iFrame中加载页面时。这里可以看到完整的示例:http://www.cs.au.dk/~gedefar/jqm/parent.html(记得在iPhone上加载它)。

对于代码并抱歉这个冗长的例子,但为了显示问题,我需要三个页面parent.html,其中包含iframe,以及两个加载的子页child_{1,2}.html iFrame(相互链接):

<div data-role="page">
  <div id="header" class="header" data-role="header"
   data-position="fixed" data-theme="c">
    Foo Bar header
  </div> 

  <div data-role="content">
    <iframe src="child_1.html" />
  </div>
</div>

child_1.html

<div data-role="page">
  <div data-role="content">
    <h1> Child page 1</h1>
    <a href="child_2.html">Go to child 2</a>
    <p>
      Normal text, where the header is perfectly positioned when touching
      here.
    </p>

    <p>
      No problems below, when this page loaded directly in the iFrame.  But loading
      child 2 using JQM we get the scolling issues.
    </p>

    <ul data-role="listview">
      <li>No link.</li>
      <li><a href="foobar">A link</a></li>
      <li>No link</li>
      <li><a href="foobar">A link</a></li>
    </ul>
  </div>
</div>

child_2.html(除了描述外,对child_1.html没有实质性的区别):

<div data-role="page">
  <div data-role="content">
    <h1> Child page 2</h1>
    <a href="child_1.html">Go to child 1</a>
    <p>
      Normal text, where the header is perfectly positioned when touching
      here and moving up and down after the first touch.
    </p>

    <p>
     The problem is with list items below containing a link. For those the
     header is not fixed. For the other it is fixed.
    </p>

    <ul data-role="listview">
      <li>No link.</li>
      <li><a href="foobar">A link</a></li>
      <li>No link</li>
      <li><a href="foobar">A link</a></li>
    </ul>
  </div>
</div>

我觉得非常奇怪的是,如果滚动的第一次点击位于子页面上的链接上,则标题仅在滚动时移动。那么这里的任何想法如何进行?或者


更新

我已经在不同版本的iOS上测试了上述场景,它在7.0.3中完美运行,但是存在任何早于7.0.0的问题。我无法访问Android手机,因此我无法在那里进行测试。

0 个答案:

没有答案