javascript – ExtJS4 LinkButton组件
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了javascript – ExtJS4 LinkButton组件,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1645字,纯文字阅读大概需要3分钟。
内容图文
![javascript – ExtJS4 LinkButton组件](/upload/InfoBanner/zyjiaocheng/721/22935c35415f4b25a772b98fdb653fe7.jpg)
我正在尝试在Ext JS 4中创建自己的LinkBut??ton组件.没什么新鲜的,对吧?
我的代码看起来像这样:
Ext.define('LinkButton', {
extend: 'Ext.Component',
xtype: 'linkbutton',
autoEl: 'a',
renderTpl: '<a href=\"javascript:;\">{text}</a>',
config: {
text: '',
handler: function () { }
},
initComponent: function () {
var me = this;
me.callParent(arguments);
this.renderData = {
text: this.getText()
};
var handler = me.getHandler();
if (handler) {
me.on('click', handler);
}
}
});
到现在为止还挺好!我的LinkBut??ton看起来像一个超链接和我的文本内容.优美.
但是,当我点击它时,我无法让我的组件触发事件!
这个特殊的行me.on(‘click’,handler);不管用!即使我从on更改为addListener它也没有效果.
所以问题是:如何将DOM事件添加到我的组件中?或者,更好的是,如何访问我自己的组件的DOM元素?我无法做到这一点!
谢谢!
解决方法:
这是我的命题,它基于Button组件的源代码:
Ext.define('LinkButton', {
extend: 'Ext.Component',
xtype: 'linkbutton',
autoEl: 'a',
renderTpl: '<a href=\"javascript:;\" id="{id}-btnEl">{text}</a>',
config: {
text: '',
handler: function () { }
},
initComponent: function () {
var me = this;
me.callParent(arguments);
this.renderData = {
text: this.getText()
};
},
onRender: function(ct, position) {
var me = this,
btn;
me.addChildEls('btnEl');
me.callParent(arguments);
btn = me.btnEl;
me.mon(btn, 'click', me.onClick, me);
},
onClick: function(e) {
var me = this;
if (me.preventDefault || (me.disabled && me.getHref()) && e) {
e.preventDefault();
}
if (e.button !== 0) {
return;
}
if (!me.disabled) {
me.fireHandler(e);
}
},
fireHandler: function(e){
var me = this,
handler = me.handler;
me.fireEvent('click', me, e);
if (handler) {
handler.call(me.scope || me, me, e);
}
}
});
工作样本:http://jsfiddle.net/lolo/AEwH4/1/
内容总结
以上是互联网集市为您收集整理的javascript – ExtJS4 LinkButton组件全部内容,希望文章能够帮你解决javascript – ExtJS4 LinkButton组件所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。