“MediaWiki:Common.js”的版本间的差异
来自UtaWiki
| 第42行: | 第42行: | ||
} | } | ||
return rands; | return rands; | ||
| + | } | ||
| + | |||
| + | /* 首页显示Lyric Collection */ | ||
| + | function showLyric(size) { | ||
| + | var m=0; | ||
| + | var n=$("#uw-mainpage-lyric dl").length; | ||
| + | var randsLyric = genRandom(m,n,size); | ||
| + | $("#uw-mainpage-lyric dl").css("display","none"); | ||
| + | for(var i=0;i<size;i++){ | ||
| + | $("#uw-mainpage-lyric dl").eq(randsLyric[i]).css("display","block"); | ||
| + | } | ||
} | } | ||
| 第58行: | 第69行: | ||
$(function(){ | $(function(){ | ||
lyricLayout(); | lyricLayout(); | ||
| + | showLyric(1); | ||
showDyk(5); | showDyk(5); | ||
}) | }) | ||
2014年7月18日 (五) 02:01的版本
/* 此处的JavaScript将加载于所有用户每一个页面。 */
function lyricLayout(){
p=$('.poem');
for (i=0;i<p.length;i++)
{
x=$('.poem').eq(i);
y=$(x).prev();
$(y).add(x).wrapAll('<div class="lyric"></div>');
}
$('div.lyric').wrapAll('<div class="lyrics"></div>');
}
/* 生成不重复随机数 */
/* Ref: http://blog.csdn.net/loyopp/article/details/17377909 */
function checkDup(rand,rands) {
if(rands.length==0){
return false;
}
for(var i=0;i<rands.length;i++){
if(rands[i]==rand){
return true;
}
}
return false;
}
function genRandom(m,n,size) {
var rands=new Array();
var rand;
var index=0;
if(m>n||m<0||n<0||size<0||(n-m+1)<size){
return;
}
for(var i=0;i<size;i++){
do {
rand=Math.floor(Math.random()*(n-m)+m);
}
while(checkDup(rand,rands));
rands[index]=rand;
index++;
}
return rands;
}
/* 首页显示Lyric Collection */
function showLyric(size) {
var m=0;
var n=$("#uw-mainpage-lyric dl").length;
var randsLyric = genRandom(m,n,size);
$("#uw-mainpage-lyric dl").css("display","none");
for(var i=0;i<size;i++){
$("#uw-mainpage-lyric dl").eq(randsLyric[i]).css("display","block");
}
}
/* 首页显示Do You Know */
function showDyk(size) {
var m=0;
var n=$("#uw-mainpage-dyk li").length;
var randsDyk = genRandom(m,n,size);
$("#uw-mainpage-dyk li").css("display","none");
for(var i=0;i<size;i++){
$("#uw-mainpage-dyk li").eq(randsDyk[i]).css("display","list-item");
}
}
/* 页面载入后执行: */
$(function(){
lyricLayout();
showLyric(1);
showDyk(5);
})