繁体   English   中英

IE 中的 Javascript 问题,但不是 FF、Chrome 或 Safari

[英]Javascript problems in IE, but not FF, Chrome, or Safari

我已经厌倦了尝试在 IE 7 中调试,它不会让我安装 IE8,因为我正在运行 vista。 因此,如果有人可以帮助我,那就太好了。

http://1searchengine.com

主要问题似乎是“类”未定义错误。

删除 scripts.js 文件中第 117 行末尾的逗号 (,)。 IE 的 JS 解析器不能在这样的动态结尾很好地运行。 FF eand CHrome + IE8+ 都可以。 这就是为什么在 IE7 上弹出错误的原因。 顺便说一句,不错的网站。

"height": idxLogoSmall[1],

应该成为

"height": idxLogoSmall[1]

我发现了一些在 IE7 中不断出现的错误

阴影框警告的修复,取消注释此行

<!--<script src="http://1searchengine.com/js/shadowbox.js" type="text/javascript"></script>-->

在索引文件中。

文件 src.php 中也有错误,您使用 GET 键 => 类型,值 => web 请求。 当我查看文件的来源时,我看到应该有更多信息的空白处。

eng.yahoo = {
pageTitle: "Yahoo",
logo: "yahoo.jpg",
places: {
    'Yahoo' : ["http://search.yahoo.com/search;_ylt=AvB2w_TBUu6j0351jgYdrtObvZx4?p=%query%&toggle=1&cop=mss&ei=UTF-8&fr=yfp-t-701"],
    'Images' : ["http://images.search.yahoo.com/search/images;_ylt=A2KJkIXjE7dNiWMA0KKJzbkF?p=%query%&fr=yfp-t-701&ei=utf-8&x=wrt&y=Search"],
    'Videos' : ["http://video.search.yahoo.com/search/video;_ylt=A2KJkIUmFLdNqmcA6XqJzbkF?ei=UTF-8&p=%query%&y=Search&fr2=tab-img&fr=yfp-t-701"],
    'Maps'   : ["http://maps.yahoo.com/#mvt=m&tp=1&
// From this point on code is missing.

至少应该有数组参数的结尾“] end the closuer of the places object } + eng.yahoo object } 的结尾。所以它应该看起来像这样

eng.yahoo = {
pageTitle: "Yahoo",
logo: "yahoo.jpg",
places: {
    'Yahoo' : ["http://search.yahoo.com/search;_ylt=AvB2w_TBUu6j0351jgYdrtObvZx4?p=%query%&toggle=1&cop=mss&ei=UTF-8&fr=yfp-t-701"],
    'Images' : ["http://images.search.yahoo.com/search/images;_ylt=A2KJkIXjE7dNiWMA0KKJzbkF?p=%query%&fr=yfp-t-701&ei=utf-8&x=wrt&y=Search"],
    'Videos' : ["http://video.search.yahoo.com/search/video;_ylt=A2KJkIUmFLdNqmcA6XqJzbkF?ei=UTF-8&p=%query%&y=Search&fr2=tab-img&fr=yfp-t-701"],
    'Maps'   : ["http://maps.yahoo.com/#mvt=m&tp=1&"]
  }
}

确保您的 PHP 代码与正确的部分相呼应。 如果您遇到问题,请将其包含在问题描述中,人们可以提供帮助。

比第 168 行的 scripts.js 中的另一个错误。您对变量的类型进行检查。 但是,如果不知道 object,则使用 IE JS 解析器是不可能的。 你现在有:

if (typeof e.languages == "object") setLang(firstProp(e.languages));
else $("#lang").fadeOut(fadeDur);

试试这个:

if (e.languages !== undefined && e.languages !== null && typeof e.languages == "object") setLang(firstProp(e.languages));
else $("#lang").fadeOut(fadeDur);

我知道这有点牵强,可能有些矫枉过正,但它会解决 IE7- 与未定义的 JS 变量有关的问题。 如果 e.languages.== undefined && e,languages.== null 不起作用。 尝试 e.languages != 'undefined' && e.languages != 'null'。

我暂时找不到 class 错误的修复程序。 那个不断出现。 因为文件被缩小了,所以不难理解它应该做什么。 但是,当其他错误消失时,它可能会被修复。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM