Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

关于DZ程序IE无法打开INTERNET站点的解决办法[分享]

[复制链接]
倔犟的牛 发表于 2006-10-24 10:35:51 | 显示全部楼层 |阅读模式
出错截图如下(网址不同)dyno兄弟的网址是http://xfq.4000webs.com


经过检查最后发现是include/menu.js文件出的问题,出现这个问题一般有可能是网页中的代码没有结束,如忘了加/a>之类的都有可能引起这个错误,但dyno的是全新的安装包安装了多次都出现这情况,猜想是主机问题但又不太可能,所以在网上搜索一番之后发现问题有可能出在程序的JS里面。
最初的解决办法是直接删除menu.js文件,删除后网站打开正常,但显示乱码(同时该主机为国外空间),把db_mysql.class.php里做注释,强制字符集GBK,问题依旧。

回头一想,问题还出在这menu.js里,是不可以直接删除的,所以接下来进行了修改工作。

下面是我搜索到的内容
  1. 打开网页时,提示“internet explore 无法打开internet站点...,已终止操作”,
  2. 曾以为是application 的原因,百思不得其解
  3. 今天晚上找遍了google、baidu、sogou,还是一无所获
  4. 看原页面代码,查找是否 DIV 没有结束,又不是。最后只能判断是JS 的问题了。
  5. 不错,正是js引发的错误。
  6. 由于页面中用到了下拉条,而且,微软把 select 的属性值设得太高了,层是没办法把他遮挡住的。只能用错就错在 <iframe 这里了,页面还没完成,就跑 <iframe ,<iframe 还没引发完成就跳转,导致游览器中断,所以就出现了 “internet explore 无法打开internet站点...,已终止操作”,
  7. 如下就是网页中用到的js,
  8. function openShim(menu,menuItem)
  9. {
  10.    if (menu==null) return;
  11.     var shim = getShim(menu);
  12.     if (shim==null) shim = createMenuShim(menu,getShimId(menu));
  13. ----------------------------------------------------------------------------------------
  14. 只要稍微修改为以下就可以了
  15. function openShim(menu,menuItem)
  16. {
  17. if (document.readyState!="complete") return ;  
  18.   if (menu==null) return;
  19.     var shim = getShim(menu);
  20.     if (shim==null) shim = createMenuShim(menu,getShimId(menu));
  21. 。。。。
  22. 即加上一个载入判断就可以了。 if (document.readyState!="complete") return ;
  23. “internet explore 无法打开internet站点...,已终止操作”,从此消失
  24. 另:遮掩 select 的方法还可以用如下:
  25. var allselect = document.getElementsByTagName("select");
  26. for (var i=0; i {
  27.   allselect[i].style.visibility = "none";
  28. }
复制代码

按照网页的提示,因DZ程序里没有下拉菜单<iframe>的代码,安装完毕之后默认是有下拉菜单Popup代码,估计可能问题相同,但修改地方则不一样(就因为不一样加上我是菜鸟所以花费了太多时间解决),最后成功的修改是把原代码

  1. var menuslidetimer = null;
  2. function Popup_Handler() {
  3. this.open_steps = 2;
  4. this.open_fade = false;
  5. this.active = false;
  6. this.menus = new Array();
  7. this.activemenu = null;
  8. this.hidden_selects = new Array();
复制代码

修改为
  1. if (document.readyState!="complete") return ;
  2. var menuslidetimer = null;
  3. function Popup_Handler() {
  4. this.open_steps = 2;
  5. this.open_fade = false;
  6. this.active = false;
  7. this.menus = new Array();
  8. this.activemenu = null;
  9. this.hidden_selects = new Array();
复制代码


重新上传menu.js,问题解决并显示正常。发现此问题是dyno兄弟的国外空间,操作系统为UNIX,到目前为止发现两例,一例替换模板后问题解决,这一例比较麻烦最终也是解决了,所以日后其他人遇到相同问题也可以用这个办法来解决,如果解决不了可以一起研究。相信任何问题都有解决的办法。

评分

2

查看全部评分

 楼主| 倔犟的牛 发表于 2006-10-24 10:36:55 | 显示全部楼层
自己的沙发。如有错误,请高手指正!
回复

使用道具 举报

小龍蝦 发表于 2006-10-24 10:39:53 | 显示全部楼层
板凳先做着
回复

使用道具 举报

daisyhhm 发表于 2006-10-24 10:40:23 | 显示全部楼层
黃金廣告位
~~~~~~~~~~~~~~~`
回复

使用道具 举报

kangren 发表于 2006-10-24 10:45:49 | 显示全部楼层
无敌社长
回复

使用道具 举报

aishuren 发表于 2006-10-25 16:57:01 | 显示全部楼层
按照老大的方法,我的首页可以打开了,可是乱码问题还是不会解决
回复

使用道具 举报

 楼主| 倔犟的牛 发表于 2006-10-25 17:20:23 | 显示全部楼层
原帖由 aishuren 于 2006-10-25 16:57 发表
按照老大的方法,我的首页可以打开了,可是乱码问题还是不会解决



强制字符集就可以了。

找到config.inc.php

分别把$headercharset = 0; 0修改为1
把这个$dbcharset = '';改为$dbcharset = 'gbk';

[ 本帖最后由 倔犟的牛 于 2006-10-25 17:25 编辑 ]
回复

使用道具 举报

rost 发表于 2006-10-25 18:29:05 | 显示全部楼层
其实用这个空间的朋友大都不是这个问题,,你看看这个帖的回帖就知道了!https://discuz.dismall.com/viewth ... page%3D1#pid3236863

[ 本帖最后由 rost 于 2006-10-25 18:30 编辑 ]
回复

使用道具 举报

 楼主| 倔犟的牛 发表于 2006-10-25 18:35:22 | 显示全部楼层
嗯。有部份是也有部份不是吧。近几天申请的都出现这情况。

你也可以申请一个用用,4G哦。

www.4000web.com
回复

使用道具 举报

luojian134 发表于 2006-10-25 19:30:51 | 显示全部楼层
好贴,学习了,谢谢分享!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-11-24 05:24 , Processed in 0.039463 second(s), 6 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表