【问题标题】:WHY doesn't Ionic allow copy paste as default?为什么 Ionic 默认不允许复制粘贴?
【发布时间】:2019-01-17 07:58:45
【问题描述】:

从我看到的其他问题和 ionic 论坛(见下面的链接)看来,ionic 在其组件中具有某种默认设置,可自动将 user-select: none 应用于应用程序主体。

我不是在这里寻找解决方法,而是想了解这样做的目的。为什么 ionic 开发人员将其设为默认值?这究竟是如何应用的?后台是否有一些 javascript 正在应用这个?

如果我在 app.scss 中应用解决方法:

body {
-webkit-user-select: text;
-moz-user-select: text;
-ms-user-select: text;
user-select: text;
}

或者在 app.module.ts 中申请:

@NgModule({
  declarations: [
    ....
  ],
  imports: [
    BrowserModule,
    IonicModule.forRoot(MyApp, {
      platforms: {
        ios: {
          scrollAssist: false,
          autoFocusAssist: false
        },
        android: {
          scrollAssist: false,
          autoFocusAssist: false
        }
      }
    }),
    HttpModule
  ]
})
....,

..我会覆盖 Ionic 的一些有用或基本功能吗?

应用这些选项之一会产生什么副作用?

参考链接: ionic 2: How to make text selectable?

https://github.com/ionic-team/ionic/issues/5198#issuecomment-344606178

【问题讨论】:

    标签: angular ionic-framework sass ionic4


    【解决方案1】:

    Ionic 使用hammer.js,默认情况下以某种方式优化行为(眼睛触摸)。具体看这个页面:http://hammerjs.github.io/tips/

    “我不能再选择我的文字了!” Hammer 正在设置一个属性来改善桌面平移的用户体验。通常,桌面浏览器会在您拖动页面时选择文本。用户选择 css 属性禁用此功能。

    如果您关心文本选择而不是桌面体验,您可以简单地从默认设置中删除此选项。确保在创建实例之前执行此操作。

    delete Hammer.defaults.cssProps.userSelect;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-07-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-02-14
      • 2014-08-27
      • 2012-09-05
      • 2014-03-03
      相关资源
      最近更新 更多