Module:Sandbox/Dr Mince/intro/test
跳到导航
跳到搜索
local p = {} local getArgs = require "Module:Arguments".getArgs function p.main(frame) local args = getArgs(frame,{wrapper="Template:滚动条"}) local name = args.name or "" local root = mw.html.create("div") :attr("id","newstyle-scroll-"..name) local length = 0 local time = args.time or "1" for i, v in ipairs(args) do length = length + 1 root:tag "span" :css("animation-delay",tonumber(time)*(i-1).."s") :wikitext(v) end local totalTime = tostring(tonumber(time)*length) local stillPercent = math.floor(100/length) local p1 = tostring(stillPercent+8) local p2 = tostring(stillPercent+12) local styles = ([[ #newstyle-scroll-%s { overflow-x: auto; overflow-y: hidden; text-align: %s; white-space: nowrap; position: relative; height: 1.4em; } #newstyle-scroll-%s > span { position: absolute; animation: scrollDiv-%s %ss linear infinite; -webkit-animation: scrollDiv-%s %ss linear infinite; top: 1.5em; } @keyframes scrollDiv-%s { 0%% { top: 1.5em; } 8%% { top: 1.5em; } 12%% { top: 0; } %s%% { top: 0; } %s%% { top: -1.5em; } 100%% { top: -1.5em; } } @-webkit-keyframes scrollDiv-%s { 0%% { top: 1.5em; } 8%% { top: 1.5em; } 12%% { top: 0; } %s%% { top: 0; } %s%% { top: -1.5em; } 100%% { top: -1.5em; } } ]]):format(name,args.align or "center",name,name,totalTime,name,totalTime,name,p1,p2,name,p1,p2) mw.log(styles) frame:callParserFunction("#css",{styles}) mw.log(root) return root end return p