“MediaWiki:Common.js”的版本间的差异

来自UtaWiki
跳转至: 导航搜索
第12行: 第12行:
 
}
 
}
  
 +
/* 生成不重复随机数 */
 +
/* Ref: http://blog.csdn.net/loyopp/article/details/17377909 */
 +
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(function(){
 +
if(rands.length==0){return false;}
 +
for(var j=0;j<rands.length;j++){
 +
if(rands[j]==rand){return true;}
 +
}
 +
return false;
 +
});
 +
rands[index]=rand;
 +
index++;
 +
}
 +
return rands;
 +
}
  
 +
/* 首页显示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(){
 
$(function(){
 
lyricLayout();
 
lyricLayout();
 +
showDyk(5);
 
})
 
})

2014年7月18日 (五) 00:06的版本

/* 此处的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 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(function(){
			if(rands.length==0){return false;}
			for(var j=0;j<rands.length;j++){
				if(rands[j]==rand){return true;}
			}
			return false;
		});
		rands[index]=rand;
		index++;
	}
	return rands;
}

/* 首页显示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();
	showDyk(5);
})