【问题标题】:Javascript menu items images not stickingJavascript菜单项图像不粘
【发布时间】:2011-05-07 06:33:41
【问题描述】:

我有这个网站

http://www.acornbusinessconsultants.co.uk/

不同页面的菜单旨在为相应页面保持灰色 - 在我将其转换为 Wordpress 之前它运行良好,但我不确定这是问题所在

谁能帮我看看我做错了什么:(

更新:

这是我正在使用的代码 - 一个朋友从某个地方复制了它,但我不确定它是如何工作的

<script type="text/javascript">
<!--
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];}}
}

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];}
}
//-->
</script>

【问题讨论】:

  • 你能提供那部分菜单的代码吗?
  • 图像 URL 没有更改为活动图像,我猜这是与 PHP 相关的幕后东西,我们无法仅通过查看站点来看到。
  • 我认为你的朋友从 1990 年代复制了 JavaScript……它们是旧的 Macromedia 翻转脚本。带回回忆 :) 但无论如何,那些只处理翻转,而不是图像的初始渲染,这就是这里的问题。
  • LOL 太棒了——我正在网上寻找更好的菜单——这可以在 CSS 中完成吗?
  • 您是否编辑了 Wordpress 模板文件以放入菜单?如果是这样,看看那里是否有关于基于当前页面显示index_undex_ 图像的任何逻辑。我猜不是……

标签: javascript html css wordpress


【解决方案1】:

根据评论对话,在我看来,确定 Wordpress 模板中缺少当前页面的逻辑。

您可以继续使用已有的图像,或者最好切换到使用 CSS 来处理翻转/活动项目的更改。

无论哪种方式,您都需要逻辑来确定当前页面。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-06-07
    • 2010-12-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-01-15
    相关资源
    最近更新 更多