我有一个使用 jQuery 1.6.2 和 jQuery Mobile 1.0b3 的 Web 应用程序。我需要显示一个选项列表,所以我使用了自定义选择。我无法使用标题按钮关闭选择,也无法选择选项。
nativeMenu = false 是全局设置的。我使用创建选择
<select data-mini="true">
<option value="1">Option1</option>
<option value="2">Option2</option>
</select>
HTML 看起来像这样(有更多选项,所以选择全屏):
<div data-role="dialog" data-theme="c" data-overlay-theme="a" tabindex="0"
class="ui-page ui-body-c ui-dialog ui-overlay-a ui-page-active" style="min-height: 480px;">
<div role="dialog" class="ui-dialog-contain ui-corner-all ui-overlay-shadow">
<div data-role="header" class="ui-corner-top ui-header ui-bar-a" role="banner">
<a href="#" data-icon="delete" data-iconpos="notext"
class="ui-btn-left ui-btn ui-shadow ui-btn-corner-all ui-btn-icon-notext ui-btn-up-a" data-corners="true"
data-shadow="true" data-iconshadow="true" data-wrapperels="span" data-theme="a" title="Close">
<span class="ui-btn-inner ui-btn-corner-all">
<span class="ui-btn-text">Close</span>
<span class="ui-icon ui-icon-delete ui-icon-shadow"> </span>
</span>
</a>
<div class="ui-title"></div>
</div>
<div data-role="content" class="ui-corner-bottom ui-content ui-body-c" role="main">
<ul class="ui-selectmenu-list ui-listview" id="undefined-menu" role="listbox" aria-labelledby="undefined-button"
data-theme="c">
<li data-option-index="0" data-icon="false" class="ui-btn ui-btn-icon-right ui-li ui-btn-active ui-btn-up-c"
role="option" data-corners="false" data-shadow="false" data-iconshadow="true" data-wrapperels="div"
data-iconpos="right" data-theme="c" aria-selected="true">
<div class="ui-btn-inner ui-li">
<div class="ui-btn-text">
<a href="#" tabindex="-1" class="ui-link-inherit">Option1</a>
</div>
</div>
</li>
<li data-option-index="1" data-icon="false" class="ui-btn ui-btn-icon-right ui-li ui-btn-up-c" role="option"
data-corners="false" data-shadow="false" data-iconshadow="true" data-wrapperels="div" data-iconpos="right"
data-theme="c" aria-selected="false">
<div class="ui-btn-inner ui-li">
<div class="ui-btn-text">
<a href="#" tabindex="-1" class="ui-link-inherit">Option2</a>
</div>
</div>
</li>
</div>
</div>
</div>
标题按钮适用于 jQuery 1.8.3 和 jQm 1.2.1(选择一个选项仍然不起作用),但更改此版本会导致我的旧应用程序中出现其他问题,所以我更喜欢 1.6.2 和 jQm 的解决方案1.0。任何想法为什么选择不起作用?
编辑:经过几天的搜索,我发现对话框没有关闭,因为我设置了 hashListeningEnabled = false。不幸的是,我无法改变这一点。我偶然发现了这个:https ://github.com/jquery/jquery-mobile/issues/2285 ,但我无法升级 jQm/jQuery 版本。所以我只能为选择找到一些好的选择。有什么建议么 ?