【问题标题】:Use start? method from opal-browser使用开始?来自蛋白石浏览器的方法
【发布时间】:2015-10-13 00:27:20
【问题描述】:

我正在尝试将此 js 代码翻译成 ruby​​ 代码

document.ontouchstart ? 'touchstart' : 'click';

我正在使用 opal-browser 来获取浏览器功能。我目前的尝试是这样的:

touch = Browser::Event::Touch.new puts touch.start?

但是这会返回错误: 未捕获的类型错误:无法读取未定义的属性“类型”

当我检查错误跟踪时,错误似乎来自 Touch 类中缺少的名称属性。

希望 Opal 社区可以在这里帮助我

【问题讨论】:

    标签: javascript ruby opalrb


    【解决方案1】:

    如果您想检查是否支持触摸,您需要致电Event::Touch.supported?

    对于这个错误,它的发生是因为.new 期望事件对象作为参数,如果你想创建一个新的事件对象,你需要调用.construct

    回想起来,将.construct 设置为.new 并将.new 设置为.wrap 或类似的东西可能会更好。

    【讨论】:

    • 谢谢!我必须做 Browser::Event::touch.supported?但它完全有效
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-14
    • 2016-10-11
    相关资源
    最近更新 更多