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

📄 twiki.js

📁 C++的iostream标准库介绍。 希望能帮助你。
💻 JS
字号:
// Generally useful JavaScript used by TWikivar POPUP_WINDOW_WIDTH = 500;var POPUP_WINDOW_HEIGHT = 480;var TWIKI_PREF_COOKIE_NAME = "TWIKIPREF";var COOKIE_PREF_SEPARATOR = "|"; // separates key-value pairsvar COOKIE_PREF_VALUE_SEPARATOR = "="; // separates key from valuevar COOKIE_EXPIRY_TIME = 365 * 24 * 60 * 60 * 1000; // one year from now// Constants for the browser typevar ns4 = (document.layers) ? true : false;var ie4 = (document.all) ? true : false;var dom = (document.getElementById) ? true : false;// Chain a new load handler onto the existing handler chain// http://simon.incutio.com/archive/2004/05/26/addLoadEvent// if prepend is true, adds the function to the head of the handler list// otherwise it will be added to the end (executed last)function addLoadEvent(func, prepend) {	var oldonload = window.onload;	if (typeof window.onload != 'function') {		window.onload = function() {			func();		};	} else {		var prependFunc = function() {			func(); oldonload();		};		var appendFunc = function() {			oldonload(); func();		};		window.onload = prepend ? prependFunc : appendFunc;	}}// Stubfunction initForm() {}// Launch a fixed-size help windowfunction launchTheWindow(inPath, inWeb, inTopic, inSkin, inTemplate) {	var template = "";	var skin = "";	if (inSkin != undefined && inSkin.length > 0) {		skin = "?skin=" + inSkin;	}	if (inTemplate != undefined && inTemplate.length > 0) {		template = "?template=" + inTemplate;	}	var win = open(inPath + inWeb + "/" + inTopic + skin + template, inTopic, "titlebar=0,width=" + POPUP_WINDOW_WIDTH + ",height=" + POPUP_WINDOW_HEIGHT + ",resizable,scrollbars");	if (win) win.focus();	return false;}/** Writes html inside container with id inId.*/function insertHtml (inHtml, inId) {	var elem = document.getElementById(inId);	if (elem) {		elem.innerHTML = inHtml;	}}// Remove the given class from an element, if it is therefunction removeClass(element, classname) {	var classes = getClassList(element);	if (!classes) return;	var index = indexOf(classname,classes);	if (index >= 0) {		classes.splice(index,1);		setClassList(element, classes);	}}// Add the given class to the element, unless it is already therefunction addClass(element, classname) {	var classes = getClassList(element);	if (!classes) return;	if (indexOf(classname, classes) < 0) {		classes[classes.length] = classname;		setClassList(element,classes);	}}// Replace the given class with a different class on the element.// The new class is added even if the old class is not present.function replaceClass(element, oldclass, newclass) {	removeClass(element, oldclass);	addClass(element, newclass);}// Get an array of the classes on the object.function getClassList(element) {	if (element.className && element.className != "") {		return element.className.split(' ');	}	return [];}// Set the classes on an element from an array of class names// Cache the list in the 'classes' attribute on the elementfunction setClassList(element, classlist) {	element.className = classlist.join(' ');}// Determine the first index of a string in an array.// Return -1 if the string is not found.function indexOf(element, array) {	if (!array || array.length == undefined) return -1;	var i = array.length;	while (i--)	{		if (array[i] == element) return i;	}	return -1;}// Applies the given function to all elements in the document of// the given tag typefunction applyToAllElements(fn, type) {    var c = document.getElementsByTagName(type);    for (var j = 0; j < c.length; j++) {        fn(c[j]);    }}// Determine if the element has the given class string somewhere in it's// className attribute.function hasClass(node, className) {    if (node.className) {    	var classes = getClassList(node);    	if (classes) return (indexOf(className, classes) >= 0);    	return false;    }}/**Add a cookie. If 'days' is set to a non-zero number of days, sets an expiry on the cookie.@deprecated Use setPref.*/function writeCookie(name,value,days) {	var expires = "";	if (days) {		var date = new Date();		date.setTime(date.getTime()+(days*24*60*60*1000));		expires = "; expires="+date.toGMTString();	}	// cumulative	document.cookie = name + "=" + value + expires + "; path=/";}/**Reads the named cookie and returns the value.@deprecated Use getPref.*/function readCookie(name) { 	var nameEQ = name + "=";	var ca = document.cookie.split(';');	if (ca.length == 0) {		ca = document.cookie.split(';');	}	for (var i=0;i < ca.length;++i) {		var c = ca[i];		while (c.charAt(0)==' ')            c = c.substring(1,c.length);		if (c.indexOf(nameEQ) == 0)            return c.substring(nameEQ.length,c.length);	}	return null;}/**Writes a TWiki preference value. If the TWiki preference of given name already exists, a new value is written. If the preference name is new, a new preference is created.Characters '|' and '=' are reserved as separators.@param inPrefName (String): name of the preference to write, for instance 'SHOWATTACHMENTS'@param inPrefValue (String): value to write, for instance '1'@param inExpiryDate (Number): (optional) expiry date of cookie; if not set uses COOKIE_EXPIRY_TIME*/function setPref(inPrefName, inPrefValue, inExpiryDate) {	var prefName = _getSafeString(inPrefName);	var prefValue = (isNaN(inPrefValue)) ? _getSafeString(inPrefValue) : inPrefValue;	var cookieString = _getPrefCookie();	var prefs = cookieString.split(COOKIE_PREF_SEPARATOR);	var index = _getKeyValueLoc(prefs, prefName);	if (index != -1) {		// updating this entry is done by removing the existing entry from the array and then pushing the new key-value onto it		prefs.splice(index, 1);	}	// else not found, so don't remove an existing entry	var keyvalueString = prefName + COOKIE_PREF_VALUE_SEPARATOR + prefValue;	prefs.push(keyvalueString);	_writePrefValues(prefs, inExpiryDate);}/**Reads the value of a preference.Characters '|' and '=' are reserved as separators.@param inPrefName (String): name of the preference to read, for instance 'SHOWATTACHMENTS'@return The value of the preference; an empty string when no value is found.*/function getPref(inPrefName) {	var prefName = _getSafeString(inPrefName);	return getPrefValueFromPrefList(prefName, getPrefList());}/**Reads the value of a preference from an array of key-value pairs. Use in conjunction with getPrefList() when you want to store the key-value pairs for successive look-ups.@param inPrefName (String): name of the preference to read, for instance 'SHOWATTACHMENTS'@param inPrefList (Array): list of key-value pairs, retrieved with getPrefList()@return The value of the preference; an empty string when no value is found.*/function getPrefValueFromPrefList (inPrefName, inPrefList) {	var keyvalue = _getKeyValue(inPrefList, inPrefName);	if (keyvalue != null) return keyvalue[1];	return '';}/**@return The array of key-value pairs.*/function getPrefList () {	var cookieString = _getPrefCookie();	if (!cookieString) return null;	return cookieString.split(COOKIE_PREF_SEPARATOR);}/**Finds a key-value pair in an array.@param inKeyValues: (Array) the array to iterate@param inKey: (String) the key to find in the array@return The first occurrence of a key-value pair, where key == inKey; null if none is found.*/function _getKeyValue (inKeyValues, inKey) {	var i = inKeyValues.length;	while (i--) {		var keyvalue = inKeyValues[i].split(COOKIE_PREF_VALUE_SEPARATOR);		if (keyvalue[0] == inKey) return keyvalue;		}	return null;}/**Finds the location of a key-value pair in an array.@param inKeyValues: (Array) the array to iterate@param inKey: (String) the key to find in the array@return The location of the first occurrence of a key-value tuple, where key == inKey; -1 if none is found.*/function _getKeyValueLoc (inKeyValues, inKey) {	var i = inKeyValues.length;	while (i--) {		var keyvalue = inKeyValues[i].split(COOKIE_PREF_VALUE_SEPARATOR);		if (keyvalue[0] == inKey) return i;		}	return -1;}/**Writes a cookie with the stringified array values of inValues.@param inValues: (Array) an array with key-value tuples@param inExpiryDate: (Number) (optional) expiry date of cookie; if not set uses COOKIE_EXPIRY_TIME*/function _writePrefValues (inValues, inExpiryDate) {	var cookieString = (inValues != null) ? inValues.join(COOKIE_PREF_SEPARATOR) : '';	var expdate = (inExpiryDate != null) ? inExpiryDate : new Date ();	FixCookieDate (expdate); // Correct for Mac date bug - call only once for given Date object!	expdate.setTime (expdate.getTime() + COOKIE_EXPIRY_TIME);	SetCookie(TWIKI_PREF_COOKIE_NAME, cookieString, expdate);}/**Gets the TWiki pref cookie; creates a new cookie if it does not exist.@return The TWiki pref cookie.*/function _getPrefCookie () {	var cookieString = GetCookie(TWIKI_PREF_COOKIE_NAME);	if (cookieString == undefined) {		// Cookie does not exist yet. Create a new one by writing without values.		_writePrefValues();		cookieString = GetCookie(TWIKI_PREF_COOKIE_NAME);	}	return cookieString;}/**Strips reserved characters '|' and '=' from the input string.@return The stripped string.*/function _getSafeString (inString) {	var regex = new RegExp(/[|=]/);	return inString.replace(regex, "");}////  Cookie Functions -- "Night of the Living Cookie" Version (25-Jul-96)////  Written by:  Bill Dortch, hIdaho Design <bdortch@hidaho.com>//  The following functions are released to the public domain.////// "Internal" function to return the decoded value of a cookie//function getCookieVal (offset) {  var endstr = document.cookie.indexOf (";", offset);  if (endstr == -1)    endstr = document.cookie.length;  return unescape(document.cookie.substring(offset, endstr));}////  Function to correct for 2.x Mac date bug.  Call this function to//  fix a date object prior to passing it to SetCookie.//  IMPORTANT:  This function should only be called *once* for//  any given date object!  See example at the end of this document.//function FixCookieDate (date) {  var base = new Date(0);  var skew = base.getTime(); // dawn of (Unix) time - should be 0  if (skew > 0)  // Except on the Mac - ahead of its time    date.setTime (date.getTime() - skew);}////  Function to return the value of the cookie specified by "name".//    name - String object containing the cookie name.//    returns - String object containing the cookie value, or null if//      the cookie does not exist.//function GetCookie (name) {  var arg = name + "=";  var alen = arg.length;  var clen = document.cookie.length;  var i = 0;  while (i < clen) {    var j = i + alen;    if (document.cookie.substring(i, j) == arg)      return getCookieVal (j);    i = document.cookie.indexOf(" ", i) + 1;    if (i == 0) break;   }  return null;}////  Function to create or update a cookie.//    name - String object containing the cookie name.//    value - String object containing the cookie value.  May contain//      any valid string characters.//    [expires] - Date object containing the expiration data of the cookie.  If//      omitted or null, expires the cookie at the end of the current session.//    [path] - String object indicating the path for which the cookie is valid.//      If omitted or null, uses the path of the calling document.//    [domain] - String object indicating the domain for which the cookie is//      valid.  If omitted or null, uses the domain of the calling document.//    [secure] - Boolean (true/false) value indicating whether cookie transmission//      requires a secure channel (HTTPS).  ////  The first two parameters are required.  The others, if supplied, must//  be passed in the order listed above.  To omit an unused optional field,//  use null as a place holder.  For example, to call SetCookie using name,//  value and path, you would code:////      SetCookie ("myCookieName", "myCookieValue", null, "/");////  Note that trailing omitted parameters do not require a placeholder.////  To set a secure cookie for path "/myPath", that expires after the//  current session, you might code:////      SetCookie (myCookieVar, cookieValueVar, null, "/myPath", null, true);//function SetCookie (name,value,expires,path,domain,secure) {  document.cookie = name + "=" + escape (value) +    ((expires) ? "; expires=" + expires.toGMTString() : "") +    ((path) ? "; path=" + path : "") +    ((domain) ? "; domain=" + domain : "") +    ((secure) ? "; secure" : "");}//  Function to delete a cookie. (Sets expiration date to start of epoch)//    name -   String object containing the cookie name//    path -   String object containing the path of the cookie to delete. This MUST//             be the same as the path used to create the cookie, or null/omitted if//             no path was specified when creating the cookie.//    domain - String object containing the domain of the cookie to delete.  This MUST//             be the same as the domain used to create the cookie, or null/omitted if//             no domain was specified when creating the cookie.//function DeleteCookie (name,path,domain) {  if (GetCookie(name)) {    document.cookie = name + "=" +      ((path) ? "; path=" + path : "") +      ((domain) ? "; domain=" + domain : "") +      "; expires=Thu, 01-Jan-70 00:00:01 GMT";  }}

⌨️ 快捷键说明

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