javascript - 如何在自定义组件中启用点击事件?

标签 javascript html events custom-controls webix

尝试创建自定义 Webix View ,但我无法启用 click事件:

这是我的尝试:http://webix.com/snippet/dbab5734

webix.protoUI({
  name:"testView",  
  $init:function(config)
  {
    this.$view.innerHTML = '<span class="webix_icon fa-question-circle" style="font-size:50px; margin:10px;"></span>';      
  }, 
  defaults:
  {
    value: "",
    height:60,
    width:60
  },
  on_click:{
    webix_view:function(){
      alert();
    }    
  },  
  setValue:function(value){
    console.log(value);
  },
  getValue:function(){
    return this.config.value
  }   
}, webix.ui.view, webix.EventSystem );

看起来像webix.EventSystem还不够,但我不知道我的错误在哪里,因为 on_click处理程序在其他情况下按需要工作

最佳答案

您正在使用“on_click”,这是一个鼠标事件。因此,您需要在代码中添加“webix.MouseEvents”以及“webix.ui.view、webix.EventSystem”,它将起作用。 请参阅:

webix.protoUI({
  name:"testView",
/*....your code....*/
  on_click:{
    webix_view:function(){
      webix.message("Hi");

    }    
  },  
/*....your code....*/  
}, webix.MouseEvents, webix.ui.view, webix.EventSystem );

关于javascript - 如何在自定义组件中启用点击事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39040858/

相关文章:

javascript - Javascript 中这些日期之间的区别?为什么并非所有浏览器都给出相同的结果?

javascript - 为什么变量在方法中未定义,但在 Typescript 的构造函数中却没有定义

javascript - 如何在一个单独的 div 中加载多个网页?

javascript - 如何在我的js数据文件更改时刷新页面

javascript 比较两次

jquery - 单击另一个按钮后如何将导航菜单按钮返回到以前的样式

javascript - 将事件监听器添加到 iFrame

javascript - 动态创建的元素上的事件绑定(bind)?

reactjs - 如何使用 mouseEvent 和 event.target 键入事件(使用 typescript react 项目)?

php - 如何正确编写登录后显示用户名的 PHP 代码?