📄 ig_shared.js
字号:
if(evnt==null)return false;
var from=evnt.fromElement&&typeof evnt.fromElement!="undefined"?evnt.fromElement:evnt.relatedTarget;
if(from==element)return true;
if(from==null)return false;
return ig_isAChildOfB(from,element);
}
function ig_isMouseOutSourceAChild(evt,element){
var evnt=window.event?window.event:evt;
if(!evnt)return false;
var to=evnt.toElement&&typeof evnt.toElement!="undefined"?evnt.toElement:evnt.relatedTarget;
if(to==element)return true;
if(to==null)return false;
return ig_isAChildOfB(to,element);
}
function ig_isAChildOfB(a,b){
if(a==null||b==null)return false;
while(a!=null){
a=a.parentNode;
if(a==b)return true;
}
return false;
}
function ig_getWebControlById(id)
{
var i,o=null;
if(!ig_shared.isEmpty(id))if((o=ig_all[id])==null)for(i in ig_all)
{
if((o=ig_all[i])!=null)if(o._id==id || o._clientID==id || o._uniqueID==id)
return o;
o=null;
}
return o;
}
if(typeof ig_all !="object")
var ig_all=new Object();
// cancel response of browser on event
function ig_cancelEvent(e)
{
if(e == null) if((e = window.event) == null) return;
if(e.stopPropagation != null) e.stopPropagation();
if(e.preventDefault != null) e.preventDefault();
e.cancelBubble = true;
e.returnValue = false;
}
function ig_TransparentPanel(transLayer){
this.Element=transLayer;
this.show=function(){
this.Element.style.visibility="visible";
this.Element.style.display="";
}
this.hide=function(){
this.Element.style.visibility="hidden";
this.Element.style.display="none";
}
this.setPosition=function(top,left,width,height){
this.Element.style.top=top;
this.Element.style.left=left;
this.Element.style.width=width;
this.Element.style.height=height;
}
}
var ig_shared=new ig_initShared();
var ig_csom=ig_shared,ig=ig_shared;
//Emulate 'apply' if it doesn't exist.
if ((typeof Function != 'undefined')&&
(typeof Function.prototype != 'undefined')&&
(typeof Function.apply != 'function')) {
Function.prototype.apply = function(obj, args){
var result, fn = 'ig_apply'
while(typeof obj[fn] != 'undefined') fn += fn;
obj[fn] = this;
var length=(((ig_csom.isArray(args))&&(typeof args == 'object'))?args.length:0);
switch(length){
case 0:
result = obj[fn]();
break;
default:
for(var item=0, params=''; item<args.length;item++){
if(item!=0) params += ',';
params += 'args[' + item +']';
}
result = eval('obj.'+fn+'('+params+');');
break;
}
//ig_delete(obj[fn]);
ig_dispose(obj[fn]);
return result;
};
}
// deprecated
var ig = ig_csom;
function findClosestMatch(startElement,partialId){
var item;
var searchString="";
var i=0;
while(partialId[i+1]!=null&&partialId[i+1].length>0){
searchString+="("+partialId[i]+")?";
i++;
}
searchString+=partialId[i]+"$";
var searchExp=new RegExp(searchString);
var curElement=startElement.firstChild;
while(curElement!=null){
if(curElement.id!=null&&(curElement.id.search(searchExp))!=-1){
return curElement;
}
item=findClosestMatch(curElement,partialId);
if(item!=null)return item;
curElement=curElement.nextSibling;
}
return null;
}
function ig_EventObject(){
this.event=null;
this.cancel=false;
this.cancelPostBack=false;
this.needPostBack=false;
this.reset=ig_resetEvent;
}
function ig_resetEvent(){
this.event=null;
this.cancel=false;
this.cancelPostBack=false;
this.needPostBack=false;
}
/***
* This Function should be called when an event needs to be fired.
* The Event should be created using the ig_EventObject function above.
* @param oControl - the javascript object representation of your control.
* @param eventName - the name of the function that should handle this event.
* Other parameters should be appended as needed when calling this function.
* The last parameter should always be the Event object created by the ig_EventObject function.
****/
function ig_fireEvent(oControl,eventName)
{
if(!eventName||oControl==null) return false;
var sEventArgs = eventName + "(oControl";
for (i = 2; i < ig_fireEvent.arguments.length; i++)
sEventArgs += ", ig_fireEvent.arguments[" + i + "]";
sEventArgs += ");";
try{eval(sEventArgs);}
catch(ex){window.status = "Can't eval " + sEventArgs; return false;}
return true;
}
function ig_dispose(obj)
{
if (ig.IsIE && ig.IsWin)
for(var item in obj)
{
if(typeof(obj[item])!="undefined" && obj[item]!=null && !obj[item].tagName && !obj[item].disposing && typeof(obj[item])!="string")
{
try {
obj[item].disposing=true;
ig_dispose(obj[item]);
} catch(e1) {;}
}
try{delete obj[item];}catch(e2){;}
}
}
function ig_initClientState(){
this.XmlDoc=document;
this.createRootNode=function(){
if(!ig.IsIE){
var str ='<?xml version="1.0"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"><ClientState id="vs"></ClientState></html>';
var p = new DOMParser();
var doc = p.parseFromString(str,"text/xml");
this.XmlDoc=doc;
return doc.getElementById("vs");
}
if(ig.IsIE50)this.XmlDoc=new ActiveXObject("Microsoft.XMLDOM");
return this.createNode("ClientState");
}
this.setPropertyValue=function(element,name,value){
if(element!=null)element.setAttribute(name,escape(value));
}
this.getPropertyValue=function(element,name){
if(element==null)return "";
return unescape(element.getAttribute(name));
}
this.addNode=function(element,nodeName){
var newNode=this.createNode(nodeName);
if(element!=null)element.appendChild(newNode);
return newNode;
}
this.removeNode=function(element,nodeName){
var nodeToRemove=this.findNode(element,nodeName);
if(element!=null)
return element.removeChild(nodeToRemove);
return null;
}
this.createNode=function(nodeName){
return this.XmlDoc.createElement(nodeName);
}
this.findNode=function(element,node){
if(element==null)return null;
var curElement=element.firstChild;
while(curElement!=null){
if(curElement.nodeName==node || curElement==node){
return curElement;
}
var item=this.findNode(curElement,node);
if(item!=null)return item;
curElement=curElement.nextSibling;
}
return null;
}
this.getText=function(element){
if(element==null)return "";
if(ig.IsIE55Plus)return escape(element.innerHTML);
return escape(this.XmlToString(element));
}
this.XmlToString=function(startElem){
var str="";
if(!startElem)return "";
var curElement=startElem.firstChild;
while(curElement!=null){
str+="<"+curElement.tagName+" ";
for(var i=0; i<curElement.attributes.length;i++)
{
var attrib=curElement.attributes[i];
str+=attrib.nodeName+"=\""+attrib.nodeValue+"\" ";
}
str+=">";
str+=this.XmlToString(curElement);
str+="</"+curElement.tagName+">";
curElement=curElement.nextSibling;
}
return str;
}
}
//
function ig_xmlNode(name)
{
this.name = name;
this.getText = function(){return escape(this.toString());}
this.childNodes = new Array();
this.toString = function()
{
var i, s = (this.name == null) ? "" : "<" + this.name;
if(this.props != null) for(i = 0; i < this.props.length; i++)
s += " " + this.props[i].name + "=\"" + this.props[i].value + "\"";
if(this.name != null) s += ">";
for(i = 0; i < this.childNodes.length; i++)
s += this.childNodes[i].toString();
if(this.name != null) s += "</" + this.name + ">";
return s;
}
this.addNode = function(node, unique)
{
if(node == null) return null;
if(unique == true) if((unique = this.findNode(node)) != null) return unique;
if(node.name == null) node = new ig_xmlNode(node);
node.parentNode = this;
return this.childNodes[this.childNodes.length] = node;
}
this.appendChild = this.addNode;
this.setAttribute = function(name, value)
{
if(name == null) return;
if(this.props == null) this.props = new Array();
var prop, i = this.props.length;
value = (value == null) ? "" : value;
while(i-- > 0)
{
prop = this.props[i];
if(prop.name == name){prop.value = value; return;}
}
prop = new Object();
prop.name = name;
prop.value = value;
this.props[this.props.length] = prop;
}
this.setPropertyValue = function(name, value){this.setAttribute(name, (value == null) ? value : escape(value));}
this.findNode = function(node, descendants)
{
if(node != null) for(var i = 0; i < this.childNodes.length; i++)
{
var n = this.childNodes[i];
if(n != null)
{
if(n.name == node || n == node)
{
n.index = i;
return n;
}
if(descendants == true && (n = n.findNode(node)) != null) return n;
}
}
return null;
}
this.removeNode = function(node)
{
var n = this.findNode(node);
if(n != null)
n.parentNode.childNodes.splice(n.index, 1);
return n;
}
this.getPropertyValue = function(name)
{
var i = (this.props == null) ? 0 : this.props.length;
while(i-- > 0)
if(this.props[i].name == name)
return unescape(this.props[i].value);
return null;
}
}
function ig_xmlNodeStatic()
{
this.createRootNode = function(){return new ig_xmlNode(null);}
this.addNode = function(e, n){return (e == null) ? (new ig_xmlNode(n)) : e.addNode(n);}
this.removeNode = function(e, n){return (e == null) ? e : e.removeNode(n);}
this.findNode = function(e, n){return (e == null) ? e : e.findNode(n);}
this.setPropertyValue = function(e, n, v){if(e != null)e.setPropertyValue(n, v);}
this.getPropertyValue = function(e, n){return (e == null) ? "" : e.getPropertyValue(n);}
this.getText = function(e)
{
var s = "", i = (e == null) ? 0 : e.childNodes.length;
for(var j = 0; j < i; j++) s += e.childNodes[j].getText();
return s;
}
}
var ig_ClientState=null;
if (!ig.IsIE55Plus) ig_ClientState = new ig_xmlNodeStatic();
else ig_ClientState=new ig_initClientState();
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -