Lar*_*Dev 2 css mobile-safari ios vue.js element-ui
我在 iOS safari 或 chrome 上遇到一个奇怪的问题,当尝试从选择输入中选择一个选项时,当我触摸选择器时,它会在第一次点击时正确显示选项,但是当我尝试选择一个选项时,我必须点击两次即可使其工作,这是我的实际场景:
"element-ui": "^2.13.1", "vue": "^2.6.11"
Run Code Online (Sandbox Code Playgroud)
这是我的选择输入:
<el-select class="select-danger"
placeholder="Language / Idioma"
v-model="locale">
<el-option v-for="option in selects.languages"
class="select-danger"
:value="option.value"
:label="option.label"
:key="option.label">
</el-option>
</el-select>
watch: {
// watch for locale changes
locale: function (value) {
alert("selected")
}
},
Run Code Online (Sandbox Code Playgroud)
这个问题似乎只发生在 iOS 上,我在 Android chrome 浏览器上测试过,工作完美。
关于可能导致此问题的原因有什么想法吗?
环顾了一段时间后,我在 Element UI Github issues 中找到了一个解决方法,就在这里:
显然,这与悬停状态有关,它在 iOS 上管理得不好,这是一个众所周知的问题,对于这种情况,解决方案似乎是将以下 SCSS 添加到 App.vue :
.el-scrollbar {
> .el-scrollbar__bar {
opacity: 1;
}
}
Run Code Online (Sandbox Code Playgroud)
但不知何故,在我的情况下,这不起作用,所以我只用 css 做到了:
/*Fixes double tap on iOS*/
.el-scrollbar__bar {
opacity: 1!important;
}
Run Code Online (Sandbox Code Playgroud)
就是这样,这解决了 Element UI 的双击问题。
希望这对其他人有帮助。