自定义单击事件触发器,小部件jquery

时间:2013-09-03 16:29:11

标签: javascript jquery jquery-ui

我正在创建一个jquery小部件,这个概念类似于菜单栏,它有两个按钮,例如ButtonOne和ButtonTwo。

我有样式关联和我的HTML代码。

我在 hello world 小部件中工作

 // Constructor
    _create: function() 
    {
        var my=this.element;
        var supe=this;

      ..............  

        //first event
        my.bind('mouseenter', function (event) {                
            supe._trigger('activated', event, my);                
        });
    },

我喜欢

 $(function() {
       ...........
       var bar=$("#bar-event").mybar();
        //first atempt
        bar.click(function() {
            alert( "Handler for .click() called." );
        });
        //second attempt
        bar.bind('mybaractivated', function(event, data) {
                // handle the event
            alert('YES WORKING!!!!!!');

        });
    });

我的第一次尝试,是noob尝试,点击工作,但在html的顶部div的所有区域。 第二次尝试可以访问我的自定义事件。

未知如何触发我的按钮的点击事件,例如,我想控制像...这样的事件。

 //
 $(function() {
   ...........
   var bar=$("#bar-event").mybar();
   bar.clickButtonOne(function() {/*do*/});
   //and
   bar.clickButtonTwo(function() {/*do*/});

或者

 //Maybe
 $(function() {
   ...........
   var bar=$("#bar-event").mybar();
   bar.bind('clickButtonOne',function(event,data) {/*do*/});
   //and
   bar.bind('clickButtonTwo',function(event,data) {/*do*/});

但不要触发小部件中的事件

1 个答案:

答案 0 :(得分:1)

嗯......就像抓住我的按钮点击并传播它

_create: function() 
    {
        var my=this.element;
        var supe=this;            

        ...............

        var btn=$(mybutton);
        btn.click(function (){
            supe._trigger('btnclick');
        });

    }

如果有更优雅或更高效,请告诉我