elselect iphone上 要点两次

**element-ui的el-select组件在iOS设备上需要点击两次才能选中选项的问题,主要是由于iOS系统的触摸事件处理机制导致的。**‌

问题原因

在iOS设备上,触摸事件处理机制会首先触发一个touchstart事件来检测用户是否在点击链接或输入框,如果是,则会取消接下来的click事件。由于element-ui的el-select组件是基于click事件的,这会导致需要点击两次才能选中选项‌1。

解决方案

  1. ‌修改全局样式 ‌:

    在全局样式中添加CSS代码,设置.el-scrollbar__bar的opacity为1,确保滚动条始终可见,从而一次点击即可选中选项。具体代码如下:

    css 复制代码
    .el-scrollbar__bar {
        opacity: 1 !important;
    }
  2. 将这段样式放在index.html中,因为el-select下拉框是和id="app"平级的,放在app.vue里以及公共样式里可能不生效‌23。

  3. ‌监听touchstart事件 ‌:

    通过监听touchstart事件,在用户点击Select组件时记录下触发的位置和时间,然后在接下来的click事件中判断是否需要进行额外的处理来避免iOS的特性。具体实现方式可以参考以下代码示例:

    javascript 复制代码
    mounted() {
        this.$refs.select.addEventListener('touchstart', this.handleTouchStart);
    },
    methods: {
        handleTouchStart(e) {
            this.$refs.select.addEventListener('click', this.handleClick);
        },
        handleClick() {
            // 处理点击事件
        }
    }

    这种方法通过监听touchstart和click事件,可以有效地解决需要点击两次才能选中选项的问题‌。

相关推荐
瓦瓦gogo1 小时前
第一次了解 iOS 开发:从 Swift、SwiftUI 到公共组件
ios·swiftui·swift
Liben5 小时前
Weex开发踩坑记录
android·前端·ios
season_zhu7 小时前
Skills For Real Engineers 系列之三:需求聊清楚了,怎么一步步走主流程,做到交付?
ios·ai编程
茶底世界之下8 小时前
窗边花瓶太暗?用 Awaking 看提亮室内的代价
ios
2501_915909068 小时前
Windows 上用 VS Code 调试 iPhone 真机 App,KXBuild 断点、崩溃定位实操
ide·windows·vscode·ios·iphone·个人开发·敏捷流程
2501_916007471 天前
抓包工具功能对比,TraceEagle、Charles、Fiddler、Wireshark、mitmproxy 差别
前端·网络协议·ios·adb·https·fiddler·wireshark
2501_915106321 天前
Windows 上开发 Unity iOS,使用 KXBuild 进行真机调试、性能采样与打包 ipa
windows·vscode·unity·ios·个人开发·swift·敏捷流程
柚鸥ASO优化1 天前
iOS 27.2 更新后,App Store 广告展示逻辑出现新变化
ios
美狐美颜SDK开放平台1 天前
视频美颜SDK如何应对快速转头与大幅度面部动作?
android·人工智能·ios·音视频·直播美颜sdk·视频美颜sdk
茶底世界之下1 天前
秋叶已经够黄了:用 Awaking 单独收一点黄色
ios