1

尝试使用 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天”选项。

笔记

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

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

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

4

1 回答 1

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" );
    }
}

-杰夫

于 2013-09-12T21:46:15.840 回答