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

📄 app.js

📁 ajax source code .
💻 JS
📖 第 1 页 / 共 5 页
字号:
						App.moduleList.push(mod);
						App.Nav.removeModuleBox();
						App.saveUserData('new', mod);
					}
					pickupZone.appendChild(div);
					
					var dataObj = App.Modules[this.parentNode.getAttribute("mod")+"Infos"].defaultObj;
	
					dataObj.container = div.lastChild;
					dataObj.admin = true;
					var mod = new Module(dataObj);
				}
			}
		}
		items[z].firstChild.onmouseover = function() {
			this.lastChild.style.color = "#F60";
			this.lastChild.style.borderBottom = "1px solid #F60";
			if (!App.Nav.isModuleBox && this.parentNode.getAttribute("mod")) {
				var div = document.getElementById("navInfosBox");
				div.style.display = "block";
				div.style.left = (App.Nav.width+5)+"px";
				div.style.top = (findPosY(this)-8)+"px";
		
				var frame = document.createElement("div");
				frame.className = "frame";
		
				var frame2 = document.createElement("div");
				frame2.className = "frame2";
				frame2.style.backgroundColor = "#F1FDF3";
				
				frame2.innerHTML = App.Modules[this.parentNode.getAttribute("mod")+"Infos"].infos;
		
				frame.appendChild(frame2);
				div.appendChild(frame);
			}
		}
		items[z].firstChild.onmouseout = function() {
			this.lastChild.style.color = "#333";
			this.lastChild.style.borderBottom = "1px solid #DDD";
			App.Nav.removeInfosBox();
		}	

	}
	
	selectionFrame.appendChild(frame2);

	var div = document.getElementById("nav");
	var tree = document.getElementById("selectionTree");
	tree.style.width = App.Nav.width+"px";

	moduleSelection.appendChild(selectionFrame);
	div.appendChild(moduleSelection);
	
	if (User.feedsId != null) {
		document.getElementById("myFeeds").firstChild.onclick();
	} else {
		document.getElementById("featuredFeeds").firstChild.onclick();
	}

	function getFaviconUrl(url) {		
		var lastIndex = url.lastIndexOf("/");
		if (lastIndex!=(url.length-1) && lastIndex!=6) {			
			return url.substring(0, lastIndex);
		} else {			
			return url;
		}
	}

	function displaySubCat(response, node) {
		var items = response.responseXML.getElementsByTagName("feed");
		var ln = items.length;
		var divUL = document.createElement("div");
		divUL.className = "ulLike";
		for (var z=0; z<ln; z++) {
			var lnk = items[z].getAttribute("sub");
			var divLI = document.createElement("div");
			divLI.className = "liLike";
			var div2 = document.createElement("div");
			div2.className = "itemLine";
			div2.setAttribute("xmlUrl", items[z].getAttribute("xmlUrl"));
			if (lnk==0) {
				div2.setAttribute("feedId", items[z].getAttribute("feedId"));
			}
			div2.setAttribute("id", items[z].getAttribute("id"));
			div2.setAttribute("sub", lnk);
			
			if (lnk==1) {
				divLI.setAttribute("sub", lnk);
				div2.innerHTML = '<div class="showSub"></div><div class="text">'+items[z].getAttribute("title")+'</div>';
			} else {
				var favicon = getFaviconUrl(items[z].getAttribute("htmlUrl"));
				div2.innerHTML = '<div class="folderIcon"><img src="'+favicon+'/favicon.ico" height="0" width="0" /></div><div class="text">'+items[z].getAttribute("title")+'</div>';
				div2.firstChild.firstChild.onload = function() {
					this.style.width = "16px";
					this.style.height = "16px";
					this.parentNode.style.backgroundImage = "none";
				}
				
			}
			
			divLI.appendChild(div2);
			
			div2.style.cursor = "pointer";
			div2.lastChild.style.borderBottom = "1px solid #DDD";
			div2.onmouseover = function() {
				this.lastChild.style.color = "#F60";
				this.lastChild.style.borderBottom = "1px solid #F60";
			}
			div2.onmouseout = function() {
				this.lastChild.style.color = "#333";
				this.lastChild.style.borderBottom = "1px solid #DDD";
			}
			
			div2.onclick = function() {
				if (this.getAttribute("sub")==1) {
					if (this.nextSibling) {
						if (this.nextSibling.style.display=="none") {
							this.nextSibling.style.display = "block";
							this.firstChild.className = "hideSub";
							App.FeedReader.resize();
						} else {
							this.nextSibling.style.display = "none";
							this.firstChild.className = "showSub";
							App.FeedReader.resize();
						}
					} else {
						var span = document.createElement("span");
						span.className = "navLoading";
						span.innerHTML = App.Loc.loading;
						this.parentNode.appendChild(span);
						Request.sendGET("getUserFeed.php?id="+this.getAttribute("id"), displaySubCat, this);
					}
				} else {
					App.Nav.drawModuleBox(this);
					var pickupZone = document.getElementById("pickupZone");
					pickupZone.style.paddingTop = "2px";

					var div = document.createElement("div");
					div.style.paddingBottom = "4px";
					div.innerHTML = '<div style="float:right; cursor:pointer"><img src="img/closeMod.gif"/></div>'+
									'<div class="addToPage"><span class="addToPageLinkOut">'+App.Loc.add2MyPage+'</span></div>'+
									'<div style="clear:both"></div><div></div>';
					div.firstChild.onclick = function() {
						App.Nav.removeModuleBox();
					}
					var linkNode = div.firstChild.nextSibling.firstChild;
					
					if (App.mode=='userPage') {
						linkNode.onmouseover = function() {
							this.className = "addToPageLinkOver";
						}
						linkNode.onmouseout = function() {
							this.className = "addToPageLinkOut";
						}
						linkNode.onclick = function() {
							delete div.lastChild.firstChild.dataObj.currentServerRequest;
							var defaultDataObj = div.lastChild.firstChild.dataObj;
							var dataObj = new Object();
							for (var i in defaultDataObj) dataObj[i] = defaultDataObj[i];
							dataObj.data = new Object();
							//for (var i in defaultDataObj.data) dataObj.data[i] = defaultDataObj.data[i];
							dataObj.title = div.lastChild.firstChild.dataObj.title;
							dataObj.data.feedId = div.lastChild.firstChild.dataObj.data.feedId;
							dataObj.feedUrl = div.lastChild.firstChild.dataObj.feedUrl;
							dataObj.container = 2;
							dataObj.admin = false;
							dataObj.isNew = true;
							var mod = new Module(dataObj);
							App.moduleList.push(mod);
							App.Nav.removeModuleBox();
							App.saveUserData('new', mod);
						}
					} else {
						linkNode.removeNode(true);
					}
					
					pickupZone.appendChild(div);

					var dataObj = App.Modules.RssReaderInfos.defaultObj;
					dataObj.container = div.lastChild;
					dataObj.title = this.lastChild.firstChild.nodeValue;
					dataObj.feedUrl = this.getAttribute("xmlUrl");
					dataObj.data.feedId = this.getAttribute("feedId");
					dataObj.data.nbTitles = null;
					dataObj.admin = true;
					var mod = new Module(dataObj);
				}
			}
			
			divUL.appendChild(divLI);
		}

		node.parentNode.lastChild.removeNode(true);
		node.parentNode.appendChild(divUL);
		node.firstChild.className = "hideSub";
		
		App.FeedReader.resize();
	}
}


 // ============== FEED READER ==================================================================

App.FeedReader = new Object();

App.FeedReader.headlinesTD = 250;

App.FeedReader.resize = function() {
	if (document.getElementById("feedReaderContentFrame") != null) {
		var w = document.body.clientWidth-10-9-20- ((App.Nav.isOpen) ? App.Nav.width-10 : 0);
		App.FeedReader.elm.style.width = w+"px";
		App.FeedReader.elm.style.left = findPosX(document.getElementById("columns"))+"px";
		var contentSize = w-App.FeedReader.headlinesTD-28;
		var contentFrame = document.getElementById("feedReaderContentFrame");
		contentFrame.style.width = contentSize+"px";
		var h = (Browser.isOpera) ? document.body.clientHeight : document.documentElement.clientHeight;
		var cssh = (h-App.FeedReader.posY-90)+"px";		
		contentFrame.style.height = cssh;		
		document.getElementById("feedReaderHeadlinesFrame").style.height = cssh;		
	}
}
App.FeedReader.close = function() {
	var div = App.FeedReader.elm;
	div.innerHTML = "";
	div.style.display = "none";
	//document.documentElement.style.overflow = "";
	//document.body.style.overflow = ""; // opera
}

App.FeedReader.display = function(data){ //{title, moduleLocalData, moduleData, selectedItemIndex}

	var ownerURL = data.moduleLocalData.feedSite;

	//scrollTo(0, 0);
	//document.documentElement.style.overflow = "hidden";
	//document.body.style.overflow = "hidden"; // opera

	var index = ownerURL.lastIndexOf("/");
	if (index!=6) ownerURL = ownerURL.substring(0, index);

	var feedSiteURLDomain = ownerURL.substring(0,ownerURL.indexOf("/", 7));
	if (!feedSiteURLDomain) feedSiteURLDomain = ownerURL;

	var div = App.FeedReader.elm;

	var readerFrame = document.createElement("div");
	readerFrame.id = "feedReaderFrame";

	var colFrame = document.getElementById("columns");
	App.FeedReader.posY = findPosY(colFrame)+5;
	div.style.top = App.FeedReader.posY+"px";

	div.style.display = "block";

	var frame = document.createElement("div");
	frame.className = "frame";

	var header = document.createElement("div");
	header.className = "header";
	header.innerHTML = '<img style="float:right;padding-right:2px" src="img/closeMod.gif"/><div class="readAll"><div><div>'+App.Loc.readAll+'</div></div></div><div style="text-align:center;padding-top:2px"><a style="text-transform:uppercase" href="'+ownerURL+'" target="_blank">'+data.title+'</a></div>';
	
	var readAllDiv = header.firstChild.nextSibling.firstChild.firstChild;
	readAllDiv.onmouseover = function() {
		this.style.color = "#F60";
	}
	readAllDiv.onmouseout = function() {
		this.style.color = "#3169B5";
	}
	readAllDiv.onclick = function() {
		headlineSelectAll();
	}
	
	header.firstChild.style.cursor = "pointer";
	header.firstChild.onclick = function() {
		window.onresize = null;
		App.FeedReader.close();
	}

	var contentFrame = document.createElement("div");
	contentFrame.id = "feedReaderFrame2";

	contentFrame.innerHTML = '<table id="readerTable" cellpadding="0" cellspacing="0" width="100%"><tr><td></td><td></td><td></td></tr></table>';
	//contentFrame.innerHTML = '<div><div></div><div></div><div></div></div>';
	var tr = contentFrame.firstChild.firstChild.firstChild;
	//var tr = contentFrame.firstChild;
	var tdHeadlines = tr.childNodes[0];
	tdHeadlines.className = "tdHeadlines";
	tdHeadlines.style.width = App.FeedReader.headlinesTD+"px";
	var tdSeparator = tr.childNodes[1];
	tdSeparator.className = "tdSeparator";
	tdSeparator.onmouseover = function() {
		this.style.backgroundColor = "#D4E4FF";
	}
	tdSeparator.onmouseout = function() {
		this.style.backgroundColor = "transparent";
	}
	var tdContent = tr.childNodes[2];
	tdContent.className = "tdContent";
	tdContent.innerHTML = '<div id="feedReaderContentFrame"><div class="contentInsideFrame"></div></div>';


	function applyPodcastEvents(node, file, name) {
		var listenNode = node.firstChild.firstChild.firstChild.firstChild;
		var downloadNode = node.lastChild.firstChild.firstChild.firstChild;
		listenNode.onmouseover = downloadNode.onmouseover = function() {
			this.style.color = "#F60";
		}
		listenNode.onmouseout = downloadNode.onmouseout = function() {
			this.style.color = "#333";
		}
		listenNode.onclick = function() {
			var podName = name;
			
			if (!document.getElementById("podPlayer")) {
				content = '<div>'+
						'<object id="podPlayer" type="application/x-shockwave-flash" data="player/player.swf?pod='+encodeURIComponent(file)+'&podname='+encodeURIComponent(podName)+'" width="238" height="17">'+
						'<param name="movie" value="player/player.swf?pod='+encodeURIComponent(file)+'&podname='+encodeURIComponent(podName)+'" />'+
						//'<param name="bgcolor" value="#EFEFEF" />'+
						'<param name="wmode" value="transparent" />'+
						'</object>'+
						'<img style="padding:0 0 4px 6px"src="img/closeBlue.gif"/>'+
						'</div>';
				var div = document.getElementById("player");
				div.innerHTML = content;
				div.style.display = "block";
				var imgClose = div.getElementsByTagName("img")[0];
				imgClose.style.cursor = "pointer";
				imgClose.onclick = function() {
					div.innerHTML = "";
					div.style.display = "none";
				}
			} else {
				var podPlayer = document.getElementById("podPlayer");
				podPlayer.SetVariable("/fileChange:pod", encodeURIComponent(file));
				podPlayer.SetVariable("/fileChange:podname", podName);
				podPlayer.TPlay("/fileChange");
			}
		}
		
	}

	function cleanContent(node, nodeTitle, itemNode) {

		function fixAttribute(item, a) {
			var attr = item.getAttribute(a);
			if (attr==null) return;
			if (attr.indexOf("http")==-1) {
				if (attr.substring(0,1)=="/") {
					item.setAttribute(a, feedSiteURLDomain+attr);
				} else {
					if (ownerURL.substring(0,1)=="/") {
						item.setAttribute(a, ownerURL+attr);
					} else {
						item.setAttribute(a, ownerURL+"/"+attr);
					}
				}
			} else {
				if (attr.indexOf(App.location)!=-1) {
					if (feedSiteURLDomain != App.location) {
						
						var locationHref = window.location.href.substring(0,window.location.href.lastIndexOf("/")+1);
						if (attr.indexOf(locationHref)!=-1 && attr!=(App.location+"/")) {
							var newAttr = feedSiteURLDomain + "/" + attr.substring(locationHref.length, attr.length);
							item.setAttribute(a, newAttr);
						} else if (attr.indexOf(App.location)!=-1 && attr!=(App.location+"/")) {
							var newAttr = feedSiteURLDomain + attr.substring(App.location.length, attr.length);
							item.setAttribute(a, newAttr);
						}
						
					}
				}
			}

⌨️ 快捷键说明

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