精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2011-11-15
可执行 写道 clue 写道 可执行 写道 hu437 写道 namecepace,在门户(portal)如果是使用的portlet,则每一个portlet会有一个namespace,如果同一个portlet在页面中出现多次,这个namespace也要生成不一样的
你认真看,每个portlet的确是后台语言给了唯一的id啊,但是相同的代码如何拿到各自对应的id呢?你试着写代码来拿就发现很难做到了。。 很难吗?我觉得你们先要处理的是JS代码的组件化,比如: <script src="widget组件JS"></script> <!--组件1--> <div id="a1"></div> <script> new widget({ id : "a1" }); </script> <!--组件2--> <div id="a2"></div> <script> new widget({ id : "a2" }); </script> 你那两段代码并不是相同的,其中“a1”和“a2”不同。 这里的js是不知道有a1、a2存在的,除除非你有什么方法写代码自动拿到“a1”和“a2” 你这个 id 的命名有没有什么规律?如果有规律的话,可以通过遍历 DOM 节点来获取其 id 的值。而且所有你需要的都会获取到。 |
|
返回顶楼 | |
发表时间:2011-11-16
可执行 写道 最近在为公司开发一个通用的门户发布平台,项目做了一大半了,突然遇到javascript多实例冲突问题,蛋都碎了!!
如果你的那段“这里需要一行javascript代码”是立即执行的,生成“<div id="X">”的同时,多生成一段js设置一个全局变量如thisId,如: <div id="1"><script>var thisId=1</script>。。。<script>alert(thisId)</script></div> 如果那段js代码不是立即执行的,而是等待整个页面加载完再执行的,就更好办了,直接遍历这些div执行即可。 如果说都是attach的事件方法,为了避免执行多次,可以执行完一次就给div设个属性啥的,后面判断一下即可。 |
|
返回顶楼 | |