⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 common.js

📁 基于Windows平台的ASP.net框架
💻 JS
字号:
function undefined(variable) {
	return typeof variable == 'undefined' ? true : false;
}

function findobj(n, d) {
	var p, i, x;
	if(!d) d = document;
	if((p = n.indexOf("?"))>0 && parent.frames.length) {
		d = parent.frames[n.substring(p + 1)].document;
		n = n.substring(0, p);
	}
	if(x != d[n] && d.all) x = d.all[n];
	for(i = 0; !x && i < d.forms.length; i++) x = d.forms[i][n];
	for(i = 0; !x && d.layers && i < d.layers.length; i++) x = findobj(n, d.layers[i].document);
	if(!x && document.getElementById) x = document.getElementById(n);
	return x;
}


function expandoptions(id)
{
	var a = document.getElementById(id);
	if(a.style.display=='')
	{
		a.style.display='none';
	}
	else
	{
		a.style.display='';
	}
}

function cloneObj(oClone, oParent, count) {
	if(oParent.childNodes.length < count) {
		var newNode = oClone.cloneNode(true);
		oParent.appendChild(newNode);
		
		return newNode;
	} 
	return false;	
}

function delObj(oParent, count) {
	if(oParent.childNodes.length > count) {
		oParent.removeChild(oParent.lastChild);
		return true;
	}
	return false;
}

function cloneObj_1(oClone, oParent, i, count, msgtext)
{

	var tempcount = 1;
	for(k=0;k<oParent['childNodes'].length;k++){
		if (oParent['childNodes'][k].tagName){
			
			if (oParent['childNodes'][k].id == oClone.id){
				tempcount ++;
			}
			
		}
	}

	if(tempcount <= count)
	{
		for(;i>0;i--)
		{
			newNode = oClone.cloneNode(true);
			oParent.appendChild(newNode);
		}
	}
	else
	{
		alert(msgtext);
	}
}

function clonePoll(maxpoll){
	var newNode = cloneObj(document.getElementById('divPollItem'), document.getElementById('polloptions') ,maxpoll)
	if(!newNode){
		alert('投票项不能多于 ' + maxpoll + ' 个');
	}
	var inputs = findtags(newNode, 'input');
	var attach;
	for(i in inputs) {
		if(inputs[i].name == 'pollitemid') {
			inputs[i].value="";
			inputs[i].id = "pollitemid";
		}
	}
}

function delOjb_1(oParent, count, msgtext)
{
	var tempcount = 0;
	for(k=0;k<oParent['childNodes'].length;k++){
		if (oParent['childNodes'][k].tagName){
			
				tempcount ++;
			
		}
	}
	
	if(tempcount > count)
	{
		oParent.removeChild(oParent.lastChild);
	}
	else
	{
		alert(msgtext);
	}
}

//选择或取消选反列表中全部记录

function checkall(form, prefix, checkall) {
	var checkall = checkall ? checkall : 'chkall';
	for(var i = 0; i < form.elements.length; i++) {
		var e = form.elements[i];
		if(e.name != checkall && (!prefix || (prefix && e.name.match(prefix)))) {
			e.checked = form.elements[checkall].checked;
		}
	}
}

//显示主题图标
function showicons(icons,iconscount,iconscolcount){
	var row=null;
	var col=null;
	var img=null;
	var rowIndex=0;
	var colIndex=0;
	var iCount = 0;
	
	if(undefined(iconscount)) {
		var iconscount = 0;
	}
	
	if(undefined(iconscolcount)) {
		var iconscolcount = 0;
	}
	

	try{

		var icons_container = findobj('iconsdiv');
		var iconstable = document.createElement('table');
				iconstable.cellPadding="2";
				iconstable.cellSpacing="0";
				iconstable.border=0;
				//iconstable.className="altbg1";
				
				iconstable.style.border="0px";
				
				iconstable.id="topiciconstable";
				
		if (!icons.length){
			iCount = 0;
		}
		else{
			iCount = icons.length
		}
		
		if (iconscount > 0 ){
			if (iCount > iconscount){
				iCount = iconscount			
			}
		}
		
		iCount = iCount + 1;
		if (iconscolcount <1){
			iconscolcount = parseInt((iCount + 1) / 2)
		}

		
		var temp_iCount = 1
		
		row=iconstable.insertRow(-1);		
		col=row.insertCell(-1);
		col.vAlign="middle";
		col.align = "left";
		col.width = "49";
		col.innerHTML = '<input type="radio" id="icon_0" name="iconid" value="0"> <label for="icon_0">无</label>';
		
		colIndex++;
		
		for(i=0;i<icons.length;i++)
		{
		
			if (icons[i]){
				temp_iCount ++;
				if (temp_iCount>iCount){
					break;
				}
				
				if (colIndex>=iconscolcount || colIndex<1){
					row=iconstable.insertRow(-1);		
					colIndex=0;
					
				}
				col=row.insertCell(-1);
				col.vAlign="middle";
				col.align = "left";
				col.width = "49";
				col.innerHTML = '<input type="radio" id="icon_' + icons[i][0] + '" name="iconid" value="' + icons[i][0] + '"> <img src="images/posticons/' + icons[i][1] + '" width="19" height="19" />';
/* 
				input = document.createElement('input');
				input.type = "radio";
				input.value = icons[i][0];
				input.id = "icon_" + icons[i][0];
				input.name = "iconid";
				col.appendChild(input);
				
				img=document.createElement('img');
				img.src="images/posticons/" + icons[i][1];
				img.alt=smilies[i][1];
				img.border=0;
				col.appendChild(img);
 */	
				colIndex++;
				
			}
		}
		
		for (i=colIndex;i<iconscolcount;i++)
		{
			if (row!=null){
				col=row.insertCell(-1);
				col.vAlign="top";
				col.innerHTML="&nbsp;";
			}
		}
		
		icons_container.appendChild(iconstable);
		
	}
	catch(e){
		alert(e.message);
	}
}


function toggle_collapse(objname) {
	obj = findobj(objname);
	img = findobj(objname+"_img");
	collapsed = getcookie("discuz_collapse");
	cookie_start = collapsed ? collapsed.indexOf(objname) : -1;
	cookie_end = cookie_start + objname.length + 1;
	if(obj.style.display == "none") {
		obj.style.display = "";
		img_re = new RegExp("_yes\\.gif$");
		img.src = img.src.replace(img_re, '_no.gif');
		if(cookie_start != -1) collapsed = collapsed.substring(0, cookie_start) + collapsed.substring(cookie_end, collapsed.length);
	} else {
		obj.style.display = "none";
		img_re = new RegExp("_no\\.gif$");
		img.src = img.src.replace(img_re, '_yes.gif');
		if(cookie_start == -1) collapsed = collapsed + objname + " ";
	}

	expires = new Date();
	expires.setTime(expires.getTime() + (collapsed ? 86400 * 30 : -(86400 * 30 * 1000)));
	document.cookie = "discuz_collapse=" + escape(collapsed) + "; expires=" + expires.toGMTString() + "; path=/";
}


function getpageurl(url,value){
	return url.replace(/\$page/ig,value);	
}

///
///
function getpagenumbers(recordcount,pagesize,mode,title, topicid, page, url){
	var pagecount = 0;
	var pagenumbers = "";
	if (recordcount<=pagesize || pagesize <= 0){
		return;
	}
	if (!mode){
		mode = 0;
	}
	switch(mode){
		case 0:
			/*
				   <script language="javascript">getpagenumbers({topic[replis]},{config.tpp});</script> 
			*/
			recordcount ++;		//帖子数自动加1(主题帖)
			pagecount = parseInt(Math.ceil(recordcount*1.0/pagesize*1.0));
			pagenumbers = "&nbsp;&nbsp;&nbsp;( " + title;
			for (i=1;i<=pagecount;i++){
				if (i>5){
					pagenumbers = pagenumbers + "&nbsp;&nbsp;...";
					i=pagecount;
				}
				pagenumbers = pagenumbers + "&nbsp;&nbsp;<a href=\"showtopic-" + topicid + "-" + i + ".aspx\">" + i + "</a>";
			}
			pagenumbers += " )";
			break;
		case 1:
		
			/*
				   <script language="javascript">getpagenumbers({topiccount},{config.tpp},1,'{request[page]}',"showforum-{forumid}-$page.aspx");</script> 
			*/
			
			pagecount = parseInt(Math.ceil(recordcount*1.0/pagesize*1.0));
			if (page=="" || page<=0){
				page = 1;
			}
			page=parseInt(page);
			pagenumbers += '<div class="p_bar">\n';
			pagenumbers += '	<span class="p_total">&nbsp;' + recordcount + '&nbsp;</span>\n';
			pagenumbers += '	<span class="p_pages">&nbsp;' + page + ' / ' + pagecount + '&nbsp;</span>';
			if (page <= 1) {
				pagenumbers += '	<span title="上一页" class="p_redirect">&lsaquo;&lsaquo;</span>\n';
			} else {
				pagenumbers += '	<a href="' + getpageurl(url,page-1) + '" class="p_redirect">&lsaquo;&lsaquo;</a>\n';
			}
			if (page != 1) pagenumbers += '	<a href="' + getpageurl(url,1) + '" class="p_num">1</a>\n';
			if (page >= 5) pagenumbers += '<span class="p_num">...</span>\n';
			if (pagecount > page + 2) {
				var endPage = page + 2;
			} else {
				var endPage = pagecount;
			}
			
			for (var i = page - 2; i <= endPage; i++) {
				if (i > 0) {
					if (i == page) {
						pagenumbers += '<span class="p_curpage">' + i + '</span>';
					} else {
						if (i != 1 && i != pagecount) {
							pagenumbers += '<a href="' + getpageurl(url,i) + '" class="p_num">' + i + '</a>';
						}
					}
				}
			}
			if ((page + 3) < pagecount) pagenumbers += '<span class="p_num">...</span>\n';
			if (page != pagecount) pagenumbers += '<a href="' + getpageurl(url,pagecount) + '" class="p_num">' + pagecount + '</a>';
			
		
			if (page >= pagecount) {
				pagenumbers += '<span class="p_redirect">&rsaquo;&rsaquo;</span>';
			} else {
				pagenumbers += '<a href="' + getpageurl(url,pagecount) + '" class="p_num">&rsaquo;&rsaquo;</a>';
			}
			
			pagenumbers += '<span class="p_num"><input name="gopage" type="text" class="p_input" id="gopage" onKeyDown="if(event.keyCode==13) {window.location=\'' + getpageurl(url,"\'+this.value + \'") + '\';}" size="4" maxlength="9" value="转到" onmouseover="this.select();" /></span>';
			pagenumbers += '</div>';
			break;
	}
	document.write(pagenumbers);
}

function showPopupText(event) {	
	if(event.srcElement) o = event.srcElement; else o = event.target;
	if (!o) return;
	MouseX = event.clientX;
	MouseY = event.clientY;
	if(o.alt != null && o.alt!="") { o.pop = o.alt;o.alt = "" }
	if(o.title != null && o.title != ""){ o.pop = o.title;o.title = "" }
	if(o.pop != sPop) {
		sPop = o.pop;
		if(sPop == null || sPop == "") {
			document.getElementById("popLayer").style.visibility = "hidden";
		} else {
			if(o.dyclass != null) popStyle = o.dyclass; else popStyle = "cPopText";
			document.getElementById("popLayer").style.visibility = "visible";
			showIt();
		}
	}
}

function showIt() {
	document.getElementById("popLayer").className = popStyle;
	document.getElementById("popLayer").innerHTML = sPop.replace(/<(.*)>/g,"&lt;$1&gt;").replace(/\n/g,"<br>");;
	popWidth = document.getElementById("popLayer").clientWidth;
	popHeight = document.getElementById("popLayer").clientHeight;
	if(MouseX + 12 + popWidth > document.body.clientWidth) popLeftAdjust = -popWidth - 24; else popLeftAdjust = 0;
	if(MouseY + 12 + popHeight > document.body.clientHeight) popTopAdjust = -popHeight - 24; else popTopAdjust = 0;
	document.getElementById("popLayer").style.left = MouseX + 12 + document.body.scrollLeft + popLeftAdjust;
	document.getElementById("popLayer").style.top = MouseY + 12 + document.body.scrollTop + popTopAdjust;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -