我正在使用Dojo Toolkit实现移动应用程序。该应用程序有几个页面,所有页面都有相同的TabBar。目前,TabBar在每个页面都是硬编码的。因此,如果想要进行更改,我需要在每个页面中更改TabBar。如何使用Dojo Toolkit解决此问题?
答案 0 :(得分:4)
使用dojo.declare,创建由TabBar扩展的自定义窗口小部件。然后在初始化代码中,要求该模块并在标记代码中将dojoType设置为自定义模块名称。类似的东西:
require([
"dojox/mobile/TabBar",
"dojox/mobile/TabBarButton"
], function ( TabBar, Button ) {
dojo.declare("myTabBar", [ TabBar ], {
buildRendering: function() {
this.inherited(arguments); // call parent
// add a number of children
this.addChild( new Button( {
icon1: 'path/to/image',
icon1: 'path/to/hoverimage',
label: 'clickme',
moveTo:"view1"
}));
}
});
});
代替代码中的UL / LI html标记,只需添加:
<div dojoType="myTabBar"></div>
正在运行示例:http://jsfiddle.net/8sD6A/