我正在创建一个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*/});
但不要触发小部件中的事件
答案 0 :(得分:1)
嗯......就像抓住我的按钮点击并传播它
_create: function()
{
var my=this.element;
var supe=this;
...............
var btn=$(mybutton);
btn.click(function (){
supe._trigger('btnclick');
});
}
如果有更优雅或更高效,请告诉我