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

📄 jstalk.js

📁 《JavaScript王者归来》examples.rar
💻 JS
字号:
function getUserInfo() //获得用户信息
{
	with(core.web.remote.ajax)
	{
		try{
			var ajax = new AjaxProxy("data/userInfo.xml");
			ajax.oncomplete = function(evt){
				var xmlDoc;
				if(evt.req.statusText == "Unknown") 
					//如果在本地执行这个例子,因为浏览器采用的协议默认是file://,所以不能直接得到xmlDoc
				{
					xmlDoc = new ActiveXObject("Microsoft.XmlDom"); //还得拿一个DOM对象来解析一下
					if(!xmlDoc.loadXML(evt.req.responseText)){
						throw (xmlDoc.parseError);
					}
				}
				else
				{
					xmlDoc = evt.req.responseXML;
				}
				var name = xmlDoc.documentElement.getElementsByTagName("name")[0].text;
				var intro = xmlDoc.documentElement.getElementsByTagName("intro")[0].text;
				var face = xmlDoc.documentElement.getElementsByTagName("face")[0].text;
				var email = xmlDoc.documentElement.getElementsByTagName("email")[0].text;

				$("username").innerText = name;
				$("twitterStatus").value = intro;
				$("myface").childNodes[0].src = face;
			}
			ajax.post("a=1");
		}
		catch(ex)
		{
			alert(ex.message);
		}
	}
}
function getFriendList()
{
	with(core.web.remote.ajax)
	{
		try{
			var ajax = new AjaxProxy("data/friends.xml");
			ajax.oncomplete = function(evt){
				var xmlDoc;
				if(evt.req.statusText == "Unknown") 
				{
					xmlDoc = new ActiveXObject("Microsoft.XmlDom"); 
					if(!xmlDoc.loadXML(evt.req.responseText)){
						throw (xmlDoc.parseError);
					}
				}
				else
				{
					xmlDoc = evt.req.responseXML;
				}
				var userList = $("userList");
				var friends = xmlDoc.documentElement.getElementsByTagName("friend");
				for(var i = 0; i < friends.length; i++)
				{
					var oli = document.createElement("li");
					var name = friends[i].getAttribute("name");
					var intro = friends[i].getAttribute("intro");
					var face = friends[i].getAttribute("face");
					var status = friends[i].getAttribute("status");
					(function(oli, friend){
						oli.innerHTML = '<a title="双击进行聊天" href="#"><img class="face" src="files/face/'+face+'" width="32" height="32"/><span class="status '+status+'" >'+name+'</span><span class="twitter">'+intro+'</span></a>';
						oli.ondblclick = function(){
							addTab(friend);
						}
					})(oli, friends[i]);
					userList.appendChild(oli);
				}
				//alert(friends);
			}
			ajax.post("a=1");
		}
		catch(ex)
		{
			alert(ex.message);
		}
	}
}

function addTab(friend)
{
	var name = friend.getAttribute("name");
	var status = friend.getAttribute("status");
	var email = friend.getAttribute("email");

	var tab = $id("_tab_"+email) || document.createElement("li");
	tab.innerHTML = '<div><span class="status '+status+'">'+name+'<a href="#" onclick="removeTab(this)">X</a></span></div>';
	
	if(!tab.id){
		tab.id = "_tab_"+email;
		tab.onclick = function(){activeTab(friend);};
		tab.content = friend;
		$("nav").childNodes[0].appendChild(tab);
	}
	activeTab(friend);
	//if(status == "chat") tab.className = 'hasChat';
}

function activeTab(friend){
	var name = friend.getAttribute("name");
	var status = friend.getAttribute("status");
	var email = friend.getAttribute("email");
	var intro = friend.getAttribute("intro");
	var face = friend.getAttribute("face");

	var bar = $("nav").childNodes[0].childNodes;

	for(var i = 1; i < bar.length; i++)
	{	
		if(bar[i].id == "_tab_"+email)
		{
			bar[i].className = 'on';
		}
		else
			bar[i].className = '';
	}
	$("chatWin").style.display = "block";
	$("panelName").innerText = name;
	$("panelEmail").innerText = email;
	$("panelIntro").innerText = intro;
	$("panelFace").src = "files/face/" + face;

	frames[0].getChatContent(email, name);
}
function removeTab(obj)
{
	var tab = obj.parentElement.parentElement.parentElement;
	tab.parentElement.removeChild(tab);
	$("chatWin").style.display = "none";
	var aT = $("nav").childNodes[0].childNodes[1];
	if(aT) activeTab(aT.content);
}
getUserInfo();
getFriendList();

⌨️ 快捷键说明

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