|
this.ParentElement=parentElem; this.ParentElement.appendChild(toolbar);
for(var i=0; i<this.Bands.length;i++) { var bandElem=this.Bands[i].BandElement(); ..... bandElem.onclick=_OutLookBarSwithBars; toolbar.appendChild(bandElem);
//创建一个新的div来包含this.Bands[i]中的ToolItems元素 var ToolItemContainer = document.createElement("div"); //设置ToolItemContainer 属性
for(var j=0; i<this.Bands[i].ToolItems.length;j++) { //将this.Bands[i].ToolItems.ToolItemElement添加到ToolItemContainer上 //如:ToolItemContainer.appendChild(this.Bands[i].ToolItems.ToolItemElement); //.... } } }
这样就定义了一个ToolBar对象,其中包含了一个Bands数组,因为一个ToolBar中有多个Band
function Band(name,caption,....)
{
//Band中所有的ToolItem。 this.ToolItems = new Array(); this.name = name; this.caption = " " + caption; //其他属性,你自己根据需要来定义,比如Band上的背景图片,背景颜色等。 .... }
//Band的方法,增加ToolItem,其实就是把item增加到this.ToolItems数组中
Band.prototype.AddItem = function(item) { ..... }
/* * 返回当前Band * 格式: * ---------------------------- * | Image | caption | * ---------------------------- */
Band.prototype.BandElement=function() {
var divElem = document.createElement("div"); divElem.id="ToolBar_Band" + this.name; divElem.name=this.name; .... divElem.style.color=this.color; .... divElem.style.position="absolute"; divElem.style.width="100%"; divElem.style.left=0;
//显示图片:如果没有提供图片路径,那么不显示图片
if(this.imageURL!=null && this.imageURL.length>0) { var imgElem=document.createElement("img"); imgElem.src = this.imageURL; divElem.appendChild(imgElem); }
//显示标题
var spanElem=document.createElement("span"); //spanElem.style.fontSize="14px";
/* * 为了支持IE和firefox,这里只能使用innerHTML * 其实innerText和innerHTML都不是W3C标准 * 其实在firefox下textContent和IE的innerText等效 */
//spanElem.innerText=this.caption; spanElem.innerHTML=this.caption; divElem.appendChild(spanElem); return(divElem); }
这里定义了一个Band,其中定义了一个ToolItems数组,因为一个Band中包含多个ToolItem
function ToolItem(name,caption,....) { this.name = name; this.caption = caption; //下面定义其他属性 .... }
/*
* 此函数返回每个ToolItem所对应的Dom元素,由几个部分组成:
* 1、图片部分; * 2、标题部分;
* 样式如: * ********* * * 图片 * * ********* * ************** * *= 标题 =* * **************
*通过下面的Table来实现精确控制
共4页: 上一页 [1] [2] 3 [4] 下一页
|