iteye_3983 2009-12-01 14:24
浏览 374
已采纳

IE中JS类调用问题

我在一个页面调用了6个JS类。 为什么在FF中js类之间调用都是正常的。但是在IE中 就调用不了?
例如。我有个localdata.js 是 读取 cookie的 在内部直接初始化 var LocalData = _LoacalData();
然后我有个类:mplayer.js 是播放器类。在web页面点击试听后 弹出播放器的时候 初始化 mplayer类 然后调用 cookie类 读取数据。。。问题就是FF 读取时没有问题的,IE读取有问题。。。
读取COOKIE 代码
[code="javascript"]
this.getCookie=function(key)
{
var arg = key+"=";
var tem=document.cookie;
if(tem!=null)
{
var pos1 = tem.indexOf(arg);
var pos2 = tem.indexOf(";",pos1);
if (pos1==-1){return null;}
if (pos2==-1){pos2=tem.length;}
tem=tem.substring((pos1+arg.length),pos2);
return unescape(tem);
}
return "";
};
[/code]

调用cookie的代码
[code="javascript"]
$i("mlist_div_cont").innerHTML = "正在载入...";

var str_tmp = LocalData.get("plist"); //这里是读取COOKIE 我在localdata 设置了一个flag 在FF中可以访问,在IE中无法访问。所以我怀疑就是LocalData 没有被引用到。但是我不知道为什么,也不知道怎么改。-_-!!!
[/code]

浏览器的兼容问题太头痛了。。。FF出问题 还可以调试。。。IE 出问题了,不报错,不出来,完全就一非暴力不合作运动(无语的不行)
新手啊。分不多。各位大大 帮忙 想想办法...
[b]问题补充:[/b]
我的那个 localdata类 已经初始化了,别的都可以调用。。。
而且 JS加载也是 先加载的localdata这个类。。。还有没有什么办法?
我这里上不了网(除了javaeye和blogjava 、csdn)。下不了东西。。。
[b]问题补充:[/b]
我试过了。alert(1) 可以出来。。。alert(2) 出不来。。。而且我在localdata 里面也 加了 alert(); 当alert(1) 完成之后 localdata 里面的也没反应。
[b]问题补充:[/b]
[code="java"]
function _LocalData()
{
xxx;
}
var LocalData = new _LocalData();
[/code]

然后在别的js中调用。。。
难道不是这样写?
[b]问题补充:[/b]
我似乎找到点什么。。
我在cookie 最后加了个 path=/ 这样的话 在删除所有后 不用重启浏览器都可以 重新写入cookie 在FF是可以通过的。但是在IE中 读不出来数据。。请问下 谁知道这个原因?

  • 写回答

5条回答 默认 最新

  • 马勒格彼得 2009-12-01 14:49
    关注

    this.getCookie方法对应的类应该实例化对象
    this.LocalData = _LoacalData();
    然后在getCookie方法里面就可以调用了,注意JS类的加载顺序,被调用的先加载 :cry:

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

悬赏问题

  • ¥50 汇编语言除法溢出问题
  • ¥65 C++实现删除N个数据列表共有的元素
  • ¥15 Visual Studio问题
  • ¥15 state显示变量是字符串形式,但是仍然红色,无法引用,并显示类型不匹配
  • ¥20 求一个html代码,有偿
  • ¥100 关于使用MATLAB中copularnd函数的问题
  • ¥20 在虚拟机的pycharm上
  • ¥15 jupyterthemes 设置完毕后没有效果
  • ¥15 matlab图像高斯低通滤波
  • ¥15 针对曲面部件的制孔路径规划,大家有什么思路吗