javascript文件引用的问题

heatwin 2006-06-28 04:52:25
先是在script.js文件中有如下代码:
var test={
a:null,
b:null,
tx:function()
{
alert(test.a);
},
initobj:function(de1,de2)
{
test.a = de1;
test.b = de2;
}
}

然后在test.htm中使用
<html>
<head>
<title>test</title>
<script language="javascript" src="script.js"></script>
<script language="javascript">
test.initobj("aa","bb");
test.tx();
</script>
</head>
</html>


按照设想的话运行test.htm后会弹出aa来的。但报错说“test未定义”。我尝试把
<script language="javascript" src="script.js"></script>
改为<script defer src="script.js"></script>但问题仍然存在。

恳请高手相助!
...全文
180 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
一笑拔剑 2006-06-28
  • 打赏
  • 举报
回复
使用settime延迟一下调用的函数
movingboy2 2006-06-28
  • 打赏
  • 举报
回复
我测试了确实会报错,环境为Win2K Adv Server + SP 4, IE 6.0.2800.1106
不解。。。
ok1234567 2006-06-28
  • 打赏
  • 举报
回复
应该有时序问题,不能保证script.js一定会被适时加载
安全的做法应该有必要的判断
qqulijun 2006-06-28
  • 打赏
  • 举报
回复
OK代码没有问题的
meizz 2006-06-28
  • 打赏
  • 举报
回复
这段代码没有问题
虚云 2006-06-28
  • 打赏
  • 举报
回复
这个应该是你的页面还没有下载完毕的问题
function show()
{
test.initobj("aa","bb");
test.tx();
}
window.onload = show();
上面就表示是在页面下载完毕再运行
ImN1 2006-06-28
  • 打赏
  • 举报
回复
貌似你的浏览器有问题


我这里很正常
heatwin 2006-06-28
  • 打赏
  • 举报
回复
但是我把script.js的代码拷贝到test.htm文件中则能执行。

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧