惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园 - Franky
N
Netflix TechBlog - Medium
Google Online Security Blog
Google Online Security Blog
月光博客
月光博客
量子位
酷 壳 – CoolShell
酷 壳 – CoolShell
V
V2EX
腾讯CDC
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
博客园 - 聂微东
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
M
MIT News - Artificial intelligence
Vercel News
Vercel News
The GitHub Blog
The GitHub Blog
Hugging Face - Blog
Hugging Face - Blog
博客园 - 【当耐特】
Apple Machine Learning Research
Apple Machine Learning Research
aimingoo的专栏
aimingoo的专栏
博客园 - 三生石上(FineUI控件)
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
MongoDB | Blog
MongoDB | Blog
H
Help Net Security
The Cloudflare Blog
Blog — PlanetScale
Blog — PlanetScale
F
Full Disclosure
G
Google Developers Blog
罗磊的独立博客
Jina AI
Jina AI
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
Y
Y Combinator Blog
H
Hackread – Cybersecurity News, Data Breaches, AI and More
J
Java Code Geeks
A
About on SuperTechFans
IT之家
IT之家
大猫的无限游戏
大猫的无限游戏
S
SegmentFault 最新的问题
有赞技术团队
有赞技术团队
GbyAI
GbyAI
雷峰网
雷峰网
T
The Blog of Author Tim Ferriss
The Register - Security
The Register - Security
U
Unit 42
D
Docker
Martin Fowler
Martin Fowler
L
LINUX DO - 热门话题
NISL@THU
NISL@THU
阮一峰的网络日志
阮一峰的网络日志
C
Cybersecurity and Infrastructure Security Agency CISA
博客园_首页
Google DeepMind News
Google DeepMind News

博客园 - Amwpfiqvy

如何查看执行计划 SQL Server 堆表与栈表的对比(大表) SQL Server中CURD语句的锁流程分析 树表分级统计 SQL:查询购买了所有指定商品的人 在SQL Server中使用正则表达式 查看SQL Server性能时常用的性能计数器 SQL Server中行列转换 Pivot UnPivot Apq本地工具集 Apq.aspx JScript.Encode.js - Amwpfiqvy - 博客园 Apq.Threading.js - Amwpfiqvy - 博客园 Script/_Config.js Apq.Text.js Apq.js - Amwpfiqvy - 博客园 prototype.js Apq.aspx - Amwpfiqvy - 博客园 查看数据库所有用户表及其列信息 利用JScript的Literal Syntax特性用字符串表示对象
第一个:_Config.js
Amwpfiqvy · 2006-12-21 · via 博客园 - Amwpfiqvy

第一个:框架配置
主要对Apq框架进行设置,如果页面涉及frame/ifram,同时标识引入Apq的最外层window。

/* 系统设置
 *
 * 每个项目均应单独建立该文件
 *
 * 2006-04-14    黄宗银
 * 
*/


/// Apq 框架设置 ------------------------------------------------------------------------------------------------------------------------------
window.Apq$Config = {
    
// 调试
    DEBUG: true,

    
// Apq 脚本库根目录
    Apq: "/Apq/",

    
// 起始页面地址
    Home: "/OurWords/User/"
}
;
/// 以下一般不用修改 --------------------------------------------------------------------------------------------------------------------------
//
/ 检测 MsXml 
function MsXml_Test()
{
    
try
    
{
        
try
        
{
            window.Apq$jsxh 
= new XMLHttpRequest();
        }

        
catch(e)
        
{
            window.Apq$jsxh 
= new ActiveXObject( "MsXml2.XMLHttp" );
        }

    }

    
catch(e)
    
{
        
if( window.confirm( '系统需要启用 ActiveX 运行权限,请检查安全设置.\n\n' + 
            '同时还需要安装Microsoft XML 分析器 MSXML 
6.0\n' + 
            '如果你未安装,请点击
"确定"打开下载\n' + 
            '注意:安装后可能需要重新打开IE' ) )
        
{
            window.open( 
"http://download.microsoft.com/download/2/e/0/2e01308a-e17f-4bf9-bf48-161356cf9c81/msxml6.msi""_blank" );
        }

        
return false;
    }

    
return true;
}


/// eval 扩展 ---------------------------------------------------------------------------------------------------------------------------------
//
/ 用无参匿名函数的形式,以指定上下文运行代码
window.anonymous = function( str, o ){
    
var fn = new Function( str );
    fn.call( o );
}
;

/// 在指定窗口 添加/运行 脚本
window.__eval = function( win, str ){
    
if( win.document.readyState == "complete" || Apq$Config.DEBUG )
    
{
        
// 该方式 ViewPage 插件看不到源代码,但调试可见
        win.eval( str );
    }

    
else
    
{
        
// 该方式调试时看不到源代码,一定程度上实现了程序逻辑的隐藏
        win.document.writeln( '<script type="text/jscript">' );
        win.document.writeln( str );
        win.document.writeln( '
<\/script>');
    }

}
;

// 初始化脚本容器
window.Apq$jsContainer = {};

/// 系统初始化,需且仅需运行一次(系统已自动处理)
window.Apq_Init = function()
{
    
// 保证每个页面均只运行一次
    if( window.Apq$ && Apq$.Apq )
    
{
        
return;
    }


    window.Apq$ 
= window.parent.Apq$ || window;    // 保存框架窗口引用
    
    
// 表示以本窗口为顶级引入 Apq 框架
    if( window.Apq$ == window )
    
{
        window.Apq 
= {
            
"__key""namespace",
            
"__type""Apq"
        }
;

        
// 将最基本的脚本文件(Apq)导出到指定窗口
        Apq.Export = function( win, ns ){
            
if( ns != "Apq" && ns != "Apq.Debug" )
            
{
                
return;
            }

            
if( Apq$jsContainer[ns] )
            
{
                __eval( win, Apq$jsContainer[ns] );
                
return;
            }

            
            
if!window.Apq$jsxh && !MsXml_Test() )
            
{
                
return;
            }

            
var url = Apq$Config.Apq + ns + ".js";
            
if( Apq$Config.DEBUG )
            
{
                url 
+= "?t=" + Math.random()
            }

            Apq$jsxh.open( 
"GET", url, false );
            Apq$jsxh.send();
            
if( Apq$jsxh.status == 200 )
            
{
                Apq$jsContainer[ns] 
= Apq$jsxh.responseText;
                __eval( win, Apq$jsContainer[ns] );
                
return;
            }

            
throw new Error( Apq$jsxh.status, Apq$jsxh.statusText );
        }
;
    }


    
// 非 Apq.aspx 页面,则从主框架页导入 Apq 框架
    if( Apq$Config.DEBUG || !window.Apq$main )
    
{
        Apq$.Apq.Export( window, 
"Apq" );
    }

    
    
if( Apq$Config.DEBUG )
    
{
        Apq$.Apq.Export( window, 
"Apq.Debug" );
        
        
// 调试模式时提示所有运行异常
        window.onerror = function(sMsg,sUrl,sLine){
            Apq.Debug.writeln( 
"\t运行时错误\n行数:" + sLine + "\n信息:" + sMsg + "\n网址:" + sUrl );
        }
;
    }

}
;

// 非 Apq.aspx 页面时立即初始化
if!window.Apq$main )
{
    window.Apq_Init();
}