【问题标题】:Can anyone advise me on what this JavaScript code does?谁能告诉我这段 JavaScript 代码的作用?
【发布时间】:2015-05-26 16:55:49
【问题描述】:

我目前正在重新设计一个导航登录标题,允许用户登录并访问我们服务器的某个部分。目前,标头仅使用纯 JS、HTML 等进行编码;绝对没有CSS。之前的设计师使用纯 JS 和 HTML 的悬停效果交换图像,而我使用 CSS。

以下是使用的 JS,据我了解,它看起来好像所有内容都只是用于图像悬停交换..有人可以确认吗?

如果不止于此,那究竟是什么?请记住,此代码位于服务器登录访问页面上,此代码正下方是 HTML。

希望能提供任何信息,谢谢!

var ifclicked = 0
function describe(text){
   window.status = text;

}
function clearstatus(){
   window.status = "";
}

function changediv(){
   parent.Bottom.location = 'Intro.asp'
   ifclicked = 1
   //parent.LeftBottom.document.frmChange.Change.value = "Yes";
   //parent.LeftBottom.document.frmChange.submit();
}
function proceed(){
   if (ifclicked == 1){
   //parent.LeftTop.location = 'TopIntro.asp'; 
   //parent.LeftBottom.location = 'Intro.asp'
   parent.Bottom.document.frmChange.Change.value = "Yes";
   parent.Bottom.document.frmChange.submit();
   ifclicked = 0;
   }
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}
function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
 var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
   var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
   if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

【问题讨论】:

  • MM_*() 往往是 Dreamweaver 样板代码。
  • 这是一个 Dreamweaver 模板的图像加载器。
  • 我认为底部的四个函数是 DW 模板的一部分,我主要关心的是上面的那些。它们是同一模板的一部分吗?至于分解它们,我认为我不必这样做,我也不认为这个问题“太具体”,因为我只是在寻找有关此代码最有可能做什么的定向建议,因为我对 JS 的经验很少。我不是要求逐个播放,只是简单地说这段代码的意图是什么。其余的我可以自己解决。

标签: javascript asp.net


【解决方案1】:

使用parent.Bottom 表示页面中存在名为“Bottom”的 iframe。

基于此,您可以假设changeDiv() 方法正在将此iframe 的内容设置为Intro.asp,并且proceed() 在该iframe 中提交了一个名为frmChange 的表单。

我还要补充一点,MM_ methodschangeDive()proceed() 方法没有直接关系,因为我没有看到对任何一组方法的任何调用。 MM_ set 的方法绝对看起来像图像预加载器和交换器,但不太明白为什么它们会存在于“登录”页面中。

【讨论】:

  • 啊啊啊啊,现在一切都说得通了。非常感谢!非常感谢您花时间向我解释。
猜你喜欢
  • 1970-01-01
  • 2021-09-06
  • 2015-09-20
  • 2017-09-15
  • 1970-01-01
  • 1970-01-01
  • 2013-05-29
  • 1970-01-01
  • 2015-12-29
相关资源
最近更新 更多