jquery - Select2 下拉菜单在 Cordova/Phonegap 中分离

标签 jquery css cordova jquery-select2 phonegap

我在我的 Cordova/Phonegap 应用程序中使用 Select2 下拉菜单,它运行良好。除非有人滚动背景,否则下拉内容会与下拉菜单分离,这会给用户带来糟糕的体验。

有谁知道如何用 CSS 或 jQuery 解决这个问题?

我通常像这样初始化它:

$(".search__box").select2({
              minimumResultsForSearch: Infinity,
              width: '100%'
});

然后代码是这样的:

<script type="text/ons-template" id="home.html">
<ons-navigator title="Navigator" var="kNavigator">

<div class="home-page wrapper">
  <select multiple="multiple" class="search__box form-control" name="search__box">
  </select>
</div>

</ons-navigator>  
</script>

它在 iOS 和 Android 上都发生了......甚至在浏览器中测试它时也是如此。我怀疑这可能是由于在 home.html 模板之外生成了 select2-container ...但我已经尝试了一切,但我迷路了:(

最佳答案

最好在用户滚动时关闭 select2。所以不会出现这样的问题。实际上,它是select2 的默认行为r,我不知道为什么它不触发您的应用程序。!如果您需要,我可以帮助您滚动关闭 `select2'。

第一种方法

$(window).on('scroll', function(){
   $("#select2-drop-mask").click();
});

第二种方法

$(window).on('scroll', function(){
  ("#mySelectElement").select2("close");
});

第三种方法

$(window).on('scroll', function(){
  $("#mySelectElement").select2().trigger("select2:close");
});

如果您愿意,您还可以将此与 resize 功能结合使用作为故障保护。希望这对你有帮助。

$(window).on('scroll resize', function(){
  $("#select2-drop-mask").click();
});

关于jquery - Select2 下拉菜单在 Cordova/Phonegap 中分离,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45727442/

相关文章:

jquery - 我无法让 jQuery 更新 DIV 对象的 "margin-Right"属性。有任何想法吗?

javascript - 我无法将 for 循环附加到 HTML 正文中的 div 标记。有任何想法吗?

jquery - 多个图像相互加载

html - FreeMarker模板中字符串过长如何灵活调整列宽?

javascript - 翻转 div 的内容在 Firefox 上有效,但在 Chrome 中无效

javascript - 如何将图像从服务器加载到phonegap中的img文件夹中

ios - Cordova Media 未定义 iOS

android - PhoneGap,嵌入式谷歌地图未在 Android Build 中显示

javascript - 如何在ajax响应返回的脚本标签内执行javascript

jquery - 如何使用 CSS 和 Javascript 旋转(或更改)背景图像