插件制作
插件自由开发文档

1.文件下载

  开发包下载:https://www.lssjt.com/code/down/open.rar

  数据包下载:https://www.lssjt.com/code/down/data.rar(定时更新)

说明:
①.开发包=所有插件代码+插件即时预览页面+简单视频教程。
②.数据包:(可选项)下载解压到开发包目录下,能离线运行,参见下面第5⑦数据包设置。
   (完全脱离本站独立运行,在不能上网的情况下,或在局域网、校园网等封闭网络来显示。)


2.打开下载包,查看使用说明,像1.html、2.html、3.html等文件是样例模版,其他是test.htm测试页面和开放文档以及相关支持文件,打开样例模版文件结构大概有下面五部分组成。如下:

						
						
						<div id="show"></div>
						
						
						
<script type="text/javascript" charset="utf-8" src="js/TohClass.js"></script>

说明:一般“2.显示代码标签”和“4.加载解析类”不能改动,每个模版务必包含id=t1及id=t2,否则显示空白。
原理:执行页面,加载接口文件,解析css样式和js模版等参数,由调回函数运行并显示数据。


3.下面就对各个功能详细介绍,id=t1,是css样式,一般代码如下:

							
							

说明:
①.这是css样式集,可以修改或增加自己需要的风格,使之与网站更加贴切融合。
②./*变量*/是系统内置20个变量,如:/*fc*/表示“颜色”值,/*h*/和/*w*/表示高度和宽度。
   20个变量使用说明见第4项调回函数中的初始值设置介绍。


4.id=t2是js模版引擎,一般代码如下:

							
							

说明:
①.js模版引擎集内支持javascript完整语法,/*变量*/优先替换变量值,/*非变量*/则自动识别为注释。
②.{#...#}即为输出语句,比如{#<div>abc</div>#}将输出<div>abc</div>。
   {#...#}里可以是html语句或者<%...%>变量。
③.<%...%>即为变量语句,它将代表当前运行环境中的变量值。
   比如num=2;则{#<li class="<%num%2==0?'a':'b'%>">#}将输出<li class="a">。
   同时,<%...%>里可为任意的js代码,只要有运行返回值即可,当没有返回值时,将出现"undefined"的字样。
④.datalist为数据源,有id,title,url,pic,year,month,day,des,hits共9个属性,用【datalist[i].属性】调用,
   其中pic为事件图片地址,没有为空;des为内容描述。

原理:
①.模版集id=t2内容系统自动执行模板的翻译工作,翻译并渲染数据后的html/xml结果在id=show显示。
②.内置轻量级模板,<%...%>都是原文输出。为了防xss漏洞,可调用encodeHTML函数如<%encodeHTML(data)%>。


5.初始值设置和调回函数,一般代码如下:

							
							

说明:
①.设置样式函数为 Toh.set({...}); 可设置17个变量值,变量说明见上面注释。
②.函数Toh.set({...});初始值可不设置或只设置一二个值而已,如:Toh.set({ie:1});设置了繁体显示。
   如:Toh.set({h:80,w:600});设置80x600的显示区域,/*h*/=80,/*w*/=600。
   不设置的变量为默认值,如:/*n*/=40,表示默认显示40条记录。
③.除上述列举17个变量外,还有/*m*/表示当前月份、/*d*/表示当前日份、/*bgcolor*/表示背景色,
   即/*bgcolor*/表示连同属性名在内的“background-color:颜色值;”,颜色值与/*bgc*/设置相同。
   如:Toh.set({bgc:'red'})则/*bgc*/='red',而/*bgcolor*/='background-color:red;'。
④.优先权问题,系统默认最低,函数Toh.set({...})中,最高在文件后面带参数,如1.html?ie=1。
   Toh.set({...})设置,可借助插件制作中的高级设置【代码集合】贴进来,就可省去带参数使代码简洁。
⑤.调回函数var callback = function(e){...};一些动态效果需要数据加载处理完后才执行的函数,请放入这里。
   调回函数里是不执行解析,像/*变量*/不能用,但还是支持变量值使用的,用e.sd表示速度值,e.h 为高度等。
⑥.数据加载Toh.init();放最下面,页面载入后再加载数据;如没有启动,调回函数callback将失效。显示为空白。
⑦.函数Toh.init({datadir:'路径',fantidir:'路径.js',idshow:0,time:3000,dedug:false}))有5个可选参数。
   其中datadir表示数据包地址,默认官方提供多个远程数据源,当需离线运行时,填解压包文件名即可,如:datadir:'data'。
   fantidir表示繁体字库路径(datadir本地化时,fantidir也必须本地化,否则繁体功能失效)
   为加快加载速度,系统自动优选官方提供多个数据源,switchtime表示数据源之间切换时间。
   idshow是数据加载前的提示标语,0不显示,1显示。
   dedug是否调试模式,默认false正常形式,true调试模式,提示一些调试过程所用的变量值。