【问题标题】:JavaScript menu behaving strangely in ChromeJavaScript 菜单在 Chrome 中的行为异常
【发布时间】:2014-02-21 22:32:23
【问题描述】:

我在一个网站上有一个下拉 javascript 菜单,它被一些 php 包含到每个页面中。在 Firefox 中没有问题,但是在 Chrome 中查看时,菜单在大多数页面上的行为都很奇怪,但不是全部,我无法弄清楚在少数正确的页面上什么是正确的。

首页在任何一个中看起来都很好:http://solve-et-coagula.us/

喜欢这个页面,大多数(在 Chrome 中)在菜单上方添加一个空格:http://solve-et-coagula.us/design.php

此页面正确显示:/rabbithole/k_2.php

这个没有:/hermeticism/gunas.php

此外,在 Chrome 中的所有情况下,下拉菜单都从菜单图像的顶部而不是底部显示。

我已经使用菜单有一段时间了,几年前就已经掌握了格式并在美学上对其进行了调整。

页面开始像 (k_2.php):

<?php
session_name("MyLogin");
session_start();
include($_SERVER['DOCUMENT_ROOT']."/menu.html");
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr">
<head>
<title>Registration</title>
<meta content="text/html" http-equiv="Content-Type" />
<link rel="stylesheet" type="text/css" href="rabbithole.css" />
<link rel="stylesheet" type="text/css" href="/general.css" />
<script src="/javascript.js" type="text/javascript"></script>
<script src="rabbithole.js" type="text/javascript"></script>
</head>
<body>
<table border="0" cellspacing="20" width="100%">
<tr>
<td class="title"><h1>Create an Account</h1></td>
</tr>
[...]

这是平面设计页面

<?php
session_name("MyLogin");
session_start();
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr">
<head>
<title>Graphic & Web Design</title>
<meta content="text/html" http-equiv="Content-Type" />
<link rel="stylesheet" type="text/css" href="rabbithole/rabbithole.css" />
<link rel="stylesheet" type="text/css" href="general.css" />
<script src="javascript.js" type="text/javascript"></script>
</head>
<body>
<?php
include($_SERVER['DOCUMENT_ROOT']."/menu.html");
?>
<table border="0" cellspacing="20" width="100%">
<tr>
<td class="title"><h1>Graphic & Web Design</h1></td>
</tr>
<tr>
<td>
<p>
[...]

这是完整的 menu.html 文件

<div align="center" id="page">
<div id="header">
<div id="mainmenu">
<span onmouseover="dropdownmenu(this, event, menu1, '146px')" onclick="return clickreturnvalue()" onmouseout="delayhidemenu()"><img alt="Hermetic Qabalah" class="menuimages" src="/images/libri.png" /></span>
<span onmouseover="dropdownmenu(this, event, menu2, '146px')" onclick="return clickreturnvalue()" onmouseout="delayhidemenu()"><img alt="Eastern Mysticism" class="menuimages" src="/images/theology.png" /></span>
<span onmouseover="dropdownmenu(this, event, menu3, '146px')" onclick="return clickreturnvalue()" onmouseout="delayhidemenu()"><img alt="Ceremonial Magick" class="menuimages" src="/images/rituals.png" /></span>
<span onmouseover="dropdownmenu(this, event, menu4, '146px')" onclick="return clickreturnvalue()" onmouseout="delayhidemenu()"><img alt="Solve et Coagula" class="menuimages" src="/images/solveetcoagula.png" /></span>
<span onmouseover="dropdownmenu(this, event, menu5, '146px')" onclick="return clickreturnvalue()" onmouseout="delayhidemenu()"><img alt="Liber Legis" class="menuimages" src="/images/thelema.png" /></span>
<span onmouseover="dropdownmenu(this, event, menu6, '146px')" onclick="return clickreturnvalue()" onmouseout="delayhidemenu()"><img alt="Lemegeton" class="menuimages" src="/images/lemegeton.png" /></span>
<span onmouseover="dropdownmenu(this, event, menu7, '146px')" onclick="return clickreturnvalue()" onmouseout="delayhidemenu()"><img alt="Miscellanea" class="menuimages" src="/images/hermeticism.png" /></span>
</div>
</div>
</div>

我们将不胜感激;这个问题还没解决。

【问题讨论】:

  • 首先包含($_SERVER['DOCUMENT_ROOT']."/menu.html");应该在body 内,并且menu.html 不应该有任何head,因为包含页面会有一个。并且标题、元、链接标签应该在head中。
  • 我会把它粘在身体里,但我过去尝试过,没有发现有什么不同。另外,菜单页面没有标题,我将两者都添加到问题中。

标签: php html javascript google-chrome firefox


【解决方案1】:

http://solve-et-coagula.us/design.php 顶部有额外的" "(其他页面上不存在),当它被删除时,菜单会正确显示。

查看该页面的代码,看看 PHP 是否有任何额外的 echoed

另外,您应该在head 元素中包含元链接和标题标签。

【讨论】:

  • 我注意到空间并同意这是导致重定位的原因,但是我没有发现任何导致它的原因,也找不到有效和无效页面之间的差异。此外,元链接和标题在 head 元素中,它们在运行时会像这样被推出。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-01-28
  • 1970-01-01
  • 2019-10-11
  • 2011-01-23
  • 2018-07-18
  • 2018-12-26
  • 1970-01-01
相关资源
最近更新 更多