插件依赖 BetterTimelineMacro
作用:输入一个tag名字,在这个tiddler中显示这个tag对应的所有内容,按照时间排序。
代码如下:
!!Example //{{{ <<queryTimeLine>> //}}} !!Code ***/ //{{{ (function($) { var macro = config.macros.queryTimeLine = { locale: { btnLabel: "查询", btnTooltip: "查询所有信息" }, handler: function(place, macroName, params, wikifier, paramString, tiddler) { var tagNameInputId = tiddler.title + "_TagName"; jQuery("<input id='"+ tagNameInputId + "'/>").appendTo(place); var btn = createTiddlyButton(place, this.locale.btnLabel, this.locale.btnTooltip, function() {}); var divId = tiddler.title + "_OutputDivId"; jQuery("<div id='"+ divId + "'/>").appendTo(place); delete btn.onclick; // XXX: hacky, but createTiddlyButton wouldn't add href otherwise $(btn).data("place", place); $(btn).data("macroName", macroName); $(btn).data("params", params); $(btn).data("wikifier", wikifier); $(btn).data("paramString", paramString); $(btn).data("tiddler", tiddler); $(btn).data("divId", divId); $(btn).data("tagNameInputId", tagNameInputId); $(btn).click(this.onClick); }, onClick: function(ev) { var btn = $(this); var place = btn.data("place"); var macroName = btn.data("macroName"); var params = btn.data("params"); var wikifier = btn.data("wikifier"); var paramString = btn.data("paramString"); var tiddler = btn.data("tiddler"); var divId = btn.data("divId"); var tagNameInputId = btn.data("tagNameInputId"); var outputDiv = document.getElementById(divId); var tagNameDiv = document.getElementById(tagNameInputId); var tagName = ""; if(tagNameDiv) tagName = tagNameDiv.value; outputDiv.innerHTML = ""; var paramString = ""; if(tagName != "") paramString += "better:true onlyTag:" + tagName; //将股票代码加入到参数 //这里要调用BetterTimelineMacro的函数,以后要加入对这个的依赖 config.macros.timeline.handler(outputDiv, macroName, params,wikifier, paramString, tiddler); //wikify("abcd", outputDiv); } }; })(jQuery); //}}}