Nov 14

dwz的页面定义函数的被覆盖的解决方法 不指定

bkkkd , 22:40 , 开发应用 , 评论(2) , 引用(0) , 阅读(12543) , Via 本站原创 | |
dwz是一个富客户端框架,基于jquery开发的.能让开发员写最小的js,开发出好用的软件.

但我在使用的时候发现部分问题.这个框架会先加载全部使用的到js,然后每次与服务端的请求都使用ajax进行.然后入到当前页面的代码里.
点击在新窗口中浏览此图片

但是问题来了.每次加载的页面里多多少少都会有一些专用的js函数.如:
访问A页面时,有一个testmsg()的函数,然后我再加载访问B页面,里面也有一个testmsg()函数.
如果再访问A页面并触发testmsg()函数.注意这里触发的实际上是B页面的testmsg()函数.因为只有一个页面的关系所有直接定义的函数都系属于window类下的函数.

这里只是一个简单的例子,如果没有相关的规定.很容易在开发的时候造成错误.
所以我建议所有使用dwz的开发者,在每个页面中写js必须增加多一层如:

<script type="text/javascript">
var add_member_editor ={
    testmsg:function(accountId){
        alertMsg.confirm("您修改的资料未保存,请选择保存或取消!", {
    okCall: function(){
      $.post("ajaxDone.html", {accountId: accountId}, ajaxDone, "json");
    }
  });
    }
};
</script>

调用的时候使用

<a class="button" href="javascript:;" onclick="add_member_editor.testmsg('accountId')"><span>确认(是/否)</span></a>

小鱼叉 Email Homepage
December 1, 2011 14:58
额,看不懂呀。。

[emot]stupid[/emot]
lee Homepage
November 20, 2011 10:23
[emot]stupid[/emot]小生弟弟就不能写点非技术类的啊。
bkkkd 回复于 November 20, 2011 18:48
非技术类的.一般都是直接用微博了.直接用手机搞定.
分页: 1/1 第一页 1 最后页
发表评论
表情
emotemotemotemotemot
emotemotemotemotemot
emotemotemotemotemot
emotemotemotemotemot
emotemotemotemotemot
打开HTML
打开UBB
打开表情
隐藏
记住我
昵称   密码   游客无需密码
网址   电邮   [注册]