欢迎来到奇葩栖息地!欢迎加入Discord服务器:XfrfHCzfbW请先至特殊:参数设置验证邮箱后再进行编辑。特殊:参数设置挑选自己想要使用的小工具!不会编辑?请至这里学习Wikitext语法。

距离淮安市2022年中考还有142天。

模块:Navbox

来自奇葩栖息地
Minecraft Wiki.png
此模块搬运自中文Minecraft Wiki

这些内容依据CC BY-NC-SA 3.0协议引入。经过双方编辑者的修改,此页内容与原页面内容可能有一定出入。

此模块已被弃用。

请使用{{SimpleNavbox}}代替。

This module implements {{navbox}}. It should generally be invoked directly on template pages, rather than using the navbox template.

Parent arguments are automatically merged with directly passed arguments (the latter overwriting the former) and all arguments are normalised to trim whitespace and set empty arguments to nil.

Dependencies

 1local p = {}
 2function p.box( f )
 3	local args = require( 'Module:ProcessArgs' ).merge( true )
 4	local navbox = {}
 5
 6	if args.title then
 7		local class = args.class or 'collapsible'
 8		local bodyStyle = args.bodystyle or ''
 9		if bodyStyle ~= '' then
10			bodyStyle = 'style="' .. bodyStyle .. '"'
11		end
12		table.insert( navbox, ' {| class="navbox hlist ' .. class .. '" ' .. bodyStyle )
13		
14		local titleStyle = args.titlestyle or ''
15		if titleStyle ~= '' then
16			titleStyle = 'style="' .. titleStyle .. '"'
17		end
18		local navbar = args[1] or ''
19		if navbar ~= '' then
20			local mini = ''
21			if navbar:match( 'navbar%-mini' ) then
22				mini = '1'
23			end
24			navbar = '<div class="navbox-navbar">' .. f:preprocess( '{{navbar|' .. args.name .. '|mini=' .. mini .. '}}' ) .. '</div>'
25		end
26		table.insert( navbox, '! class="navbox-top" colspan="2" ' .. titleStyle .. ' | ' .. navbar .. '<span class="navbox-title">' .. args.title .. '</span>' )
27	else
28		table.insert( navbox, ' {| class="navbox-child"' )
29	end
30	
31	local groupNums = {}
32	for k, v in pairs( args ) do
33		if type( k ) == 'string' then
34			local groupNum = k:match( 'group(%d+)' )
35			if groupNum and v then
36				table.insert( groupNums, tonumber( groupNum ) )
37			end
38		end
39	end
40	table.sort( groupNums )
41	
42	local groupStyle = args.groupstyle or ''
43	local listStyle = args.liststyle or ''
44	for _, v in ipairs( groupNums ) do
45		local list = args['list' .. v]
46		if list then
47			table.insert( navbox, '|-\n! class="navbox-group" style="' .. groupStyle .. '" | ' .. args['group' .. v] )
48			table.insert( navbox, '| class="navbox-list" style="' .. listStyle .. '" | ' .. list:gsub( '^([*#:{])', '\n%1' ) )
49		end
50	end
51	
52	table.insert( navbox, '|}' )
53	
54	navbox = table.concat( navbox, '\n' ):gsub( ' style=""', '' )
55	return navbox
56end
57return p