jQuery Mobile在打开一段时间后选择“抽搐”到第一项

时间:2013-05-02 14:41:59

标签: jquery-mobile

当我尝试使用jQuery Mobile选择一个选项时,我遇到了一个恼人的“twich”问题。

要重现问题:

请参阅:http://jsfiddle.net/4aXH8/

<link rel="stylesheet" href="http://code.jquery.com/mobile/1.3.1/jquery.mobile-1.3.1.min.css" />
<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
<script src="http://code.jquery.com/mobile/1.3.1/jquery.mobile-1.3.1.min.js"></script>          

<select name="select-choice-1" id="select-choice-1">
  <option value="standard">Standard: 7 day</option>
  <option value="rush">Rush: 3 days</option>
  <option value="express">Express: next day</option>
  <option value="overnight">Overnight</option>
</select>
  1. 打开选择菜单。
  2. 将鼠标悬停在“过夜”选项上。
  3. 等待~2秒,观察它进入“标准:7天”选项。
  4. 备注

    一旦发生“抽搐”事件,您必须在jsfiddler中点击“运行”以启动发生此问题的状态。

    HTML直接来自网站:http://jquerymobile.com/demos/1.0a4.1/docs/forms/forms-selects.html

    有人知道这里发生了什么吗?

1 个答案:

答案 0 :(得分:0)

此问题是由jquery.mobile-1.3.2.js的以下行~11091引起的:

// This is a fallback. If anything goes wrong (JS errors, etc), or events don't fire,
// this ensures the rendering class is removed after 5 seconds, so content is visible and accessible
setTimeout( hideRenderingClass, 5000 )

评论它解决了这个问题。或者您可以将hideRenderClass()更改为:

function hideRenderingClass() {
if ($html.hasClass( "ui-mobile-rendering" )) {
        $html.removeClass( "ui-mobile-rendering" );
    }
}

-Geoff