[关闭]
@duanyubin 2016-03-03T09:43:17.000000Z 字数 1598 阅读 199

自定义模板

示例

Alt text
关键点解释:
1. class命名空间,防止命名冲突。
2. 必需,默认即可。
3. 非必需,表明当前模块为子模块。
4. 非必需,表明当前模块可拖拽。如果一个模块包含child=true和draggable=true,此模块只能在父模块内拖拽。
5. 非必需,存储模板信息,JSON格式。如果包含此属性,表示点击此模块会弹出对话框,要求填入内容。如果不需要更改类似于topicid等信息,则可不加此属性。
6. 数据绑定,跟⑤配合使用。
7. 必需,以便后续可删除此模块。
8. 可用此标签作为占位符,方便在cms中操作,注意element的innerHTML为空。
9. 实际的vm存放处。可以⑧配合使用,加上类cms-hide以便在cms中隐藏。
10. 此为VM的注释,隐藏部分cms信息,#* blablabla *#中间的内容在生成专题时会隐藏。

注意事项

  1. 所有的自定义模块不会保存。
  2. 命名约定,自定义模块所有的类置于.ntes-custom下。
  3. 一些工具方法,见下方。
  4. 较重要的两个css类。cms-hide 在cms中隐藏此元素,对应ntes-hide在实际生成的页面中隐藏此元素。
  5. 页面包含了 NTESj)。
  6. 尽量不要引入外部的css和js,由于cms在https下,导致预览时外部http下的静态资源无法加载。

HTML模板

  1. <!-- Velocity模板,可以使用cms中的工具方法 -->
  2. <div
  3. class="ntes-custom"
  4. #*
  5. ntes-module="custom"
  6. child=true
  7. draggable=true
  8. ntes-module-model='{"topicid":"123123","listnum":4, "title":"栏目标题"}'
  9. *# >
  10. <span class="ntes-hide btn cms-btn" ng-click="delModule()">删除</span>
  11. <style></style>
  12. <div class="title">{{title}}</div>
  13. <div class="content" #* contenteditable *# >这里是内容</div>
  14. <div class="cms-custom-mask"></div>
  15. <div class="clearfix cms-hide">
  16. #set ($list=$tag.getList("topicid={{topicid}};listnum={{listnum}};titlelength=10;pointstart=60;pointend=90;"))
  17. #if ($list) #foreach ($one in $list)
  18. #set ($til = ${tools.replaceAll($tools.stripTags([标题]),"\"",""")})
  19. <div class="item #if($velocityCount%2== 0)last#end">
  20. <a href="$one.get('url')" target="_blank">
  21. <img src="$one.get('imgsrc')" width=130 height=90 />
  22. <span>[标题]</span>
  23. </a>
  24. </div>
  25. #end#end
  26. </div>
  27. <script></script>
  28. </div>

CSS工具方法

页面中已提供的工具方法。

  1. .center-block{
  2. width: 1000px;
  3. margin-left: auto;
  4. margin-right: auto;
  5. }
  6. .clearfix{
  7. *zoom:1;
  8. &:after{
  9. clear:both;
  10. height:0;
  11. overflow:hidden;
  12. display:block;
  13. visibility:hidden;
  14. content:".";
  15. }
  16. }
  17. .ntes-left{
  18. float: left;
  19. }
  20. .ntes-right{
  21. float: right;
  22. }
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注