<header><meta http-equiv="X-UA-Compatible" content="IE=EmulateIE9"><meta name="hibp-verify" content="dweb_ahmm7tzpovjk0hkhflm8wqvu" />

<!--[if IE]>
<meta http-equiv="Refresh" content="0; URL=http://noie.ksepeses.com/">
<!--<![endif]-->
    <script charset="UTF-8" id="LA_COLLECT" src="//sdk.51.la/js-sdk-pro.min.js?id=3N8xzwWYGoxEeDm5&ck=3N8xzwWYGoxEeDm5"></script>
<link rel="icon" type="image/x-icon" href="./favicon-16.ico" sizes="16x16">
<link rel="icon" type="image/png" href="./zyom.png" sizes="512x512">
<link rel="icon" href="./favicon.ico" type="image/x-icon">
<link rel="shortcut icon" href="./favicon.ico" type="image/x-icon">
<meta name="Keywords" content="扩科偶梦,知沅考试,偶像梦幻祭,知沅偶梦,扩展科目偶像梦幻祭,知沅教育,知沅教育出版社,扩展科目">
<meta name="Description" Content="我们的梦想永不终结！欢迎来到知沅教育出版社扩展科目偶像梦幻祭课程教材教学研究所官网~(〃'▽'〃)(〃'▽'〃)">
<meta name="msvalidate.01" content="F6FE2D5F15A458308AEA9CA31A96263F" />
<meta name="baidu-site-verification" content="codeva-9r28d9psyW" />

<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-2824368906056698"
     crossorigin="anonymous"></script>
</header>
<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="zh">
	<id>https://m.ksepeses.com/index.php?action=history&amp;feed=atom&amp;title=%E6%A8%A1%E5%9D%97%3A%E5%88%87%E6%8D%A2%E6%98%BE%E7%A4%BA</id>
	<title>模块:切换显示 - 版本历史</title>
	<link rel="self" type="application/atom+xml" href="https://m.ksepeses.com/index.php?action=history&amp;feed=atom&amp;title=%E6%A8%A1%E5%9D%97%3A%E5%88%87%E6%8D%A2%E6%98%BE%E7%A4%BA"/>
	<link rel="alternate" type="text/html" href="https://m.ksepeses.com/index.php?title=%E6%A8%A1%E5%9D%97:%E5%88%87%E6%8D%A2%E6%98%BE%E7%A4%BA&amp;action=history"/>
	<updated>2026-04-21T09:36:49Z</updated>
	<subtitle>本wiki的该页面的版本历史</subtitle>
	<generator>MediaWiki 1.35.2</generator>
	<entry>
		<id>https://m.ksepeses.com/index.php?title=%E6%A8%A1%E5%9D%97:%E5%88%87%E6%8D%A2%E6%98%BE%E7%A4%BA&amp;diff=271&amp;oldid=prev</id>
		<title>鹤訓：建立内容为“--COPIED FROM MOEGIRL PEDIA local module = {}  local getArgs = require('Module:Arguments').getArgs local sortedArgs = require('Module:SortArgs').sortedArgs  local…”的新页面</title>
		<link rel="alternate" type="text/html" href="https://m.ksepeses.com/index.php?title=%E6%A8%A1%E5%9D%97:%E5%88%87%E6%8D%A2%E6%98%BE%E7%A4%BA&amp;diff=271&amp;oldid=prev"/>
		<updated>2024-10-27T05:31:52Z</updated>

		<summary type="html">&lt;p&gt;建立内容为“--COPIED FROM MOEGIRL PEDIA local module = {}  local getArgs = require(&amp;#039;Module:Arguments&amp;#039;).getArgs local sortedArgs = require(&amp;#039;Module:SortArgs&amp;#039;).sortedArgs  local…”的新页面&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新页面&lt;/b&gt;&lt;/p&gt;&lt;div&gt;--COPIED FROM MOEGIRL PEDIA&lt;br /&gt;
local module = {}&lt;br /&gt;
&lt;br /&gt;
local getArgs = require('Module:Arguments').getArgs&lt;br /&gt;
local sortedArgs = require('Module:SortArgs').sortedArgs&lt;br /&gt;
&lt;br /&gt;
local initSpan = function(className, templateName, frame)&lt;br /&gt;
	local args = getArgs(frame, { wrappers = 'Template:' .. templateName })&lt;br /&gt;
&lt;br /&gt;
	local span = mw.html.create('span')&lt;br /&gt;
	span:attr('class', className)&lt;br /&gt;
&lt;br /&gt;
	if className == 'textToggleDisplayButtons' then -- 自Template:切换显示调用。&lt;br /&gt;
		local operators = {} -- 操作参数。&lt;br /&gt;
		local contentlist = {} --[[内容表列。结构为：&lt;br /&gt;
												{&lt;br /&gt;
													strcode = 字符串代号,&lt;br /&gt;
													on = @on后缀的内容,&lt;br /&gt;
													off = @off后缀的内容,&lt;br /&gt;
													default = 没有@on或@off后缀的内容,&lt;br /&gt;
												}&lt;br /&gt;
											]]&lt;br /&gt;
		for k, v in sortedArgs(args, frame.args['@sort'], '|') do&lt;br /&gt;
			mw.log(k, v)&lt;br /&gt;
			if mw.ustring.sub(k, 1, 1) == '@' then&lt;br /&gt;
				operators[k] = v&lt;br /&gt;
			else&lt;br /&gt;
				local strcode&lt;br /&gt;
				local onoff = nil&lt;br /&gt;
				-- 获取字符串代号和开关类型。&lt;br /&gt;
				if mw.ustring.sub(k, -3) == '@on' then&lt;br /&gt;
					strcode = mw.ustring.sub(k, 1, mw.ustring.len(k) - 3)&lt;br /&gt;
					onoff = 'on'&lt;br /&gt;
				elseif mw.ustring.sub(k, -4) == '@off' then&lt;br /&gt;
					strcode = mw.ustring.sub(k, 1, mw.ustring.len(k) - 4)&lt;br /&gt;
					onoff = 'off'&lt;br /&gt;
				else&lt;br /&gt;
					strcode = k&lt;br /&gt;
				end&lt;br /&gt;
				onoff = onoff or 'default' -- 没有开关类型就是默认值。&lt;br /&gt;
&lt;br /&gt;
				if not contentlist[strcode] then&lt;br /&gt;
					table.insert(contentlist, {strcode = strcode}) -- 增加空的内容表。&lt;br /&gt;
					contentlist[strcode] = #contentlist -- 定位新增加的索引，绑定到参数k。&lt;br /&gt;
				end&lt;br /&gt;
				contentlist[contentlist[strcode]][onoff] = v -- 替换内容。&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
&lt;br /&gt;
		local counter = 0 -- 计数器。&lt;br /&gt;
		for k_operators, v_operators in pairs(operators) do&lt;br /&gt;
			span:attr('data-key-' .. counter, k_operators):attr('data-value-' .. counter, v_operators)&lt;br /&gt;
			counter = counter + 1&lt;br /&gt;
		end&lt;br /&gt;
&lt;br /&gt;
		for index, content in ipairs(contentlist) do&lt;br /&gt;
			span:tag('span'):attr('data-order', index - 1):attr('data-key', content.strcode):tag('span'):addClass(&lt;br /&gt;
				'textToggleDisplayButtonLabelText on'&lt;br /&gt;
			):wikitext(frame:preprocess(content.on or content.default)):done():tag('span'):addClass(&lt;br /&gt;
				'textToggleDisplayButtonLabelText off'&lt;br /&gt;
			):wikitext(frame:preprocess(content.off or content.default))&lt;br /&gt;
		end&lt;br /&gt;
	else&lt;br /&gt;
		local counter = 0 -- 计数器&lt;br /&gt;
		for k, v in pairs(args) do&lt;br /&gt;
			if v ~= nil then&lt;br /&gt;
				span:attr('data-key-' .. counter, k):attr('data-value-' .. counter, v)&lt;br /&gt;
				counter = counter + 1&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	return tostring(span)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function module.template(frame)&lt;br /&gt;
	local args = getArgs(frame, { wrappers = 'Template:切换显示/模板' })&lt;br /&gt;
&lt;br /&gt;
	local tTitle = args['@'] or ''&lt;br /&gt;
	if tTitle == '' then&lt;br /&gt;
		return nil&lt;br /&gt;
	end&lt;br /&gt;
	local tag = args['@tag']&lt;br /&gt;
&lt;br /&gt;
	local branches = {}&lt;br /&gt;
	local params = {}&lt;br /&gt;
	for k, v in sortedArgs(args, frame.args['@sort'], '|') do&lt;br /&gt;
		if not mw.ustring.match(k, '^@[^@]') then&lt;br /&gt;
			local i = 1&lt;br /&gt;
			while true do&lt;br /&gt;
				local _, j, flag = mw.ustring.find(k, '@(.)', i)&lt;br /&gt;
				if j == nil then&lt;br /&gt;
					i = mw.ustring.len(k)&lt;br /&gt;
					break&lt;br /&gt;
				elseif flag == '@' then&lt;br /&gt;
					i = j + 1&lt;br /&gt;
				else&lt;br /&gt;
					i = j - 2&lt;br /&gt;
					break&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
&lt;br /&gt;
			local param = mw.text.trim(mw.ustring.gsub(mw.ustring.sub(k, 1, i), '@@', '@'))&lt;br /&gt;
			local branch = mw.ustring.sub(k, i + 2)&lt;br /&gt;
			if mw.text.trim(param) ~= '' then&lt;br /&gt;
				if params[param] == nil then&lt;br /&gt;
					params[param] = {}&lt;br /&gt;
				end&lt;br /&gt;
				if branch ~= '' and branches[branch] == nil then&lt;br /&gt;
					branches[branch] = #branches + 1&lt;br /&gt;
					table.insert(branches, branch)&lt;br /&gt;
				end&lt;br /&gt;
				if branch == '' then&lt;br /&gt;
					params[param][0] = v&lt;br /&gt;
				else&lt;br /&gt;
					params[param][branch] = v&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	local result = {}&lt;br /&gt;
	for _, branch in ipairs(branches) do&lt;br /&gt;
		if type(branch) == 'string' then&lt;br /&gt;
			local tArgs = {}&lt;br /&gt;
			for param, bValue in pairs(params) do&lt;br /&gt;
				tArgs[param] = bValue[branch] or bValue[0]&lt;br /&gt;
			end&lt;br /&gt;
&lt;br /&gt;
			table.insert(&lt;br /&gt;
				result,&lt;br /&gt;
				frame:expandTemplate {&lt;br /&gt;
					title = '切换显示',&lt;br /&gt;
					args = {&lt;br /&gt;
						[1] = branch,&lt;br /&gt;
						[2] = frame:expandTemplate {title = tTitle, args = tArgs},&lt;br /&gt;
						[3] = tag&lt;br /&gt;
					}&lt;br /&gt;
				}&lt;br /&gt;
			)&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	return table.concat(result)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function module.button(frame)&lt;br /&gt;
	return initSpan('textToggleDisplayButtons', '切换显示按钮', frame)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function module.style(frame)&lt;br /&gt;
	return initSpan('textToggleDisplayStyle', '切换显示样式', frame)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function module.buttonStyle(frame)&lt;br /&gt;
	return initSpan('textToggleDisplayButtonsStyle', '切换显示按钮样式', frame)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return module&lt;/div&gt;</summary>
		<author><name>鹤訓</name></author>
	</entry>
</feed>