我的任务是重写当前支持我的客户内部网站的Javascript引擎。在审查的代码中,我遇到过这个功能flvFPW1我不承认,我也不能破译代码(我的JavaScript知识是谦虚充其量)。 Google搜索为我提供了一些点击量,但大部分(如果不是全部)页面点击来自该特定页面上使用的Javascript,换句话说,即使明显地被其他人使用,我也找不到这个函数的描述。flvFPW1() - 它有什么作用?
这里有人能告诉我吗?
感谢/弗雷德里克
我的任务是重写当前支持我的客户内部网站的Javascript引擎。在审查的代码中,我遇到过这个功能flvFPW1我不承认,我也不能破译代码(我的JavaScript知识是谦虚充其量)。 Google搜索为我提供了一些点击量,但大部分(如果不是全部)页面点击来自该特定页面上使用的Javascript,换句话说,即使明显地被其他人使用,我也找不到这个函数的描述。flvFPW1() - 它有什么作用?
这里有人能告诉我吗?
感谢/弗雷德里克
我自己的研究同意,这是一个Dreamweaver扩展:我发现(向下滚动一些关于这个页)而不是1.3:
function flvFPW1(){//v1.44
var v1=arguments,v2=v1[2].split(","),v3=(v1.length>3)?v1[3]:false,v4=(v1.length>4)?parseInt(v1[4]):0,
v5=(v1.length>5)?parseInt(v1[5]):0,v6,v7=0,v8,v9,v10,v11,v12,v13,v14,v15,v16;v11=
new Array("width,left,"+v4,"height,top,"+v5);for (i=0;i<v11.length;i++){v12=v11[i].split(",");l_iTarget=parseInt(v12[2]);
if (l_iTarget>1||v1[2].indexOf("%")>-1){v13=eval("screen."+v12[0]);
for (v6=0;v6<v2.length;v6++){v10=v2[v6].split("=");
if (v10[0]==v12[0]){v14=parseInt(v10[1]);if (v10[1].indexOf("%")>-1){v14=(v14/100)*v13;v2[v6]=v12[0]+"="+v14;}}
if (v10[0]==v12[1]){v16=parseInt(v10[1]);v15=v6;}}
if (l_iTarget==2){v7=(v13-v14)/2;v15=v2.length;}
else if (l_iTarget==3){v7=v13-v14-v16;}v2[v15]=v12[1]+"="+v7;}}v8=v2.join(",");v9=window.open(v1[0],v1[1],v8);
if (v3){v9.focus();}document.MM_returnValue=false;return v9;}
当然,这是通过压缩器来节省带宽,这使得它很难阅读。在我意识到通过向我的搜索字符串中添加“dreamweaver”可以获得更好的结果之前,我花了一些时间不加混淆。这样做,我能找到一些更有趣的文档:
http://www.flevooware.nl/dreamweaver/extdetails.asp?extID=8(简短描述) http://satsuki.altervista.org/basibloggers/source40.txt(全脚本代码,在意大利)
简而言之:它基本上只是window.open
的包装。这里是我翻译代码的进展:
function flvFPW1()
{//v1.44
var v1=arguments; // pass v1[0] and v1[1] directly to window.open
var arg3=v1[2].split(",");
var focusNewWindow=(v1.length>3)?v1[3]:false;
var newWindowWidth=(v1.length>4)?parseInt(v1[4]):0;
var newWindowHeight=(v1.length>5)?parseInt(v1[5]):0;
var adjustedWindowPosition=0,result,keyValuePair,AxisProperty;
var windowSize,sizeValue,arg3Index,anchorValue;
var hwArray= new Array("width,left,"+newWindowWidth,"height,top,"+newWindowHeight);
for (i=0;i<hwArray.length;i++) // x-axis, then y-axis
{
AxisProperty=hwArray[i].split(","); // {"width", "left", 0} or {"height", "top", 0}
l_iTarget=parseInt(AxisProperty[2]); // l_iTarget defined where?
if (l_iTarget>1||v1[2].indexOf("%")>-1)
{
screenSize=eval("screen."+AxisProperty[0]); // x or y size of the window
for (var i=0;i<arg3.length;i++)
{
keyValuePair=arg3[i].split("=");
if (keyValuePair[0]==AxisProperty[0]) // if the key is (width|height)
{
sizeValue=parseInt(keyValuePair[1]);
if (keyValuePair[1].indexOf("%")>-1)
{
sizeValue=(sizeValue/100)* screenSize;
arg3[i]=AxisProperty[0]+"="+sizeValue;
}
}
if (keyValuePair[0]==AxisProperty[1]) // if the key is (left|top)
{
anchorValue=parseInt(keyValuePair[1]);
arg3Index=i;
}
}
if (l_iTarget==2)
{
adjustedWindowPosition=(screenSize-sizeValue)/2; // will center the window on this axix
arg3Index=arg3.length;
}
else if (l_iTarget==3)
{
adjustedWindowPosition= screenSize-sizeValue-anchorValue;
}
arg3[arg3Index]=AxisProperty[1]+"="+adjustedWindowPosition; // (left|top) = value
}
}
var newArg3=arg3.join(",");
result=window.open(v1[0],v1[1],newArg3);
if (focusNewWindow)
{
result.focus();
}
document.MM_returnValue=false;
return result;
}
我不认为这是一个内置的功能,所以它只是一些功能,你的团队的一书中写道。
这可能是Dreamweaver将打开一个网页,做一些事情,虽然功能...
安装Firefox(http://www.mozilla.com/en-US/firefox/)和萤火虫延伸(https://addons.mozilla.org/en-US/firefox/addon/1843)。使用FireBug的DOM选项卡找到该功能并在右栏中点击它。它会带您到该函数定义的文件/行。
或打开你最喜欢的功能强大的文本编辑器(如TextPad或TextMate的)的HTML页面,并做了搜索/查找功能名称。
如果你说你已经找到了功能,但不能真正了解它,那么你或许应该粘贴在你的问题中的代码。
谷歌收益率:
function flvFPW1() { // v1.3
// Copyright 2002, Marja Ribbers-de Vroed, FlevOOware (www.flevooware.nl/dreamweaver/)
var v1 = arguments, v2 = v1[2].split(","), v3 = (v1.length > 3) ? v1[3] : false, v4 = (v1.length > 4) ? parseInt(v1[4]) : 0, v5 = (v1.length > 5) ? parseInt(v1[5]) : 0, v6, v7 = 0, v8, v9, v10, v11, v12, v13, v14, v15, v16, v17, v18;
if (v4 > 1) {
v10 = screen.width;
for (v6 = 0; v6 < v2.length; v6++) {
v18 = v2[v6].split("=");
if (v18[0] == "width") {
v8 = parseInt(v18[1]);
}
if (v18[0] == "left") {
v9 = parseInt(v18[1]);
v11 = v6;
}
}
if (v4 == 2) {
v7 = (v10 - v8)/2;
v11 = v2.length;
} else if (v4 == 3) {
v7 = v10 - v8 - v9;
}
v2[v11] = "left=" + v7;
}
if (v5 > 1) {
v14 = screen.height;
for (v6 = 0; v6 < v2.length; v6++) {
v18 = v2[v6].split("=");
if (v18[0] == "height") {
v12 = parseInt(v18[1]);
}
if (v18[0] == "top") {
v13 = parseInt(v18[1]);
v15 = v6;
}
}
if (v5 == 2) {
v7 = (v14 - v12)/2;
v15 = v2.length;
} else if (v5 == 3) {
v7 = v14 - v12 - v13;
}
v2[v15] = "top=" + v7;
}
v16 = v2.join(",");
v17 = window.open(v1[0], v1[1], v16);
if (v3) {
v17.focus();
}
document.MM_returnValue = false;
}
在注释中的网址指向:
感谢您帮助大家! spilth:是的,我找到了js文件中的函数,但无法理解代码。由于我在与我的客户页面无关的其他几个页面上找到了相同的功能,因此我认为其用途已被其他人知晓。所以我不打扰发布代码。但我会在下一次。
最好的问候
营救:http://www.howtocreate.co.uk/tutorials/jsexamples/JSTidy.html – 2008-12-18 16:01:14