WEB开发网
开发学院网页设计JavaScript Javascript乱弹设计模式系列(2) - 抽象工厂以及工... 阅读

Javascript乱弹设计模式系列(2) - 抽象工厂以及工厂方法模式(Factory)

 2010-09-14 13:35:26 来源:WEB开发网   
核心提示: LMRBlockFactory继承于布局抽象工厂类,实现它的抽象方法createBlock和getBlockText,Javascript乱弹设计模式系列(2) - 抽象工厂以及工厂方法模式(Factory)(7),其中creatBlock通过参数值,创建对应的布局实现类,这里是个假设,包

LMRBlockFactory继承于布局抽象工厂类,实现它的抽象方法createBlock和getBlockText,其中creatBlock通过参数值,创建对应的布局实现类,这里用到了典型的抽象工厂模式;

8. 好了,一切都具备好了,现在开始讨论我们的前台使用了,添加factory.html,引用该引用的JS文件,这里列出一些核心代码:

1) 添加初始化数据

varmembertype="superadmin";//从用户类型得到值,这里是个假设,包含三个类型用户:guest,blogmember,superadmin
varcolor="blue";//这里是初始化颜色,包括四种颜色:blue,green,red,violet
varblockfactory;//布局工厂类的全局变量声明

(你可以通过用户登录将登录信息存入cookies中,从cookies获取用户类型和用户选择色调)

2) 初始化用户类型

//初始化用户类型
varmember=MemberFactory.createMemberType(membertype);
$("#spanMemberType").html(member.getMemberInfo());
$("#container-1li[id^='li']").css("display","block");
$("#container-1li[id^='li']").each(function(index){
  vararr=$(this).attr("power").split('|');//取得对应标签的权限数组
  if(arr.indexOf(membertype)==-1)//权限比较
  {
    $(this).css("display","none");
    $("#fragment-"+(index+1)).css("display","none");
  }
});
if(member.isSetColorBlock())//是否可设置布局和颜色
  $("#Set").css("display","block");
else
  $("#Set").css("display","none");
$("#selMemberType").val(membertype);

上一页  2 3 4 5 6 7 8  下一页

Tags:

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接