javascript的问题: alert出不来,怎么办?

时间:2022-09-02 22:35:14
如题,下面这小段html代码,可以弹出alert框
<html>
<head>
<script language="text/javascript" src="jstar.js">
</script>
</head>
<body onload="alert('hello');">
<body>
<html>

其中jstar.js里面的内容是
function f(){
  alert('OK');
}

但是如果我把body的onload改成下面这样
<body onload="f();">
就不会有alert('OK')的对话框出现。我在IE和ff试了,都不行。

为什么呢? 

20 个解决方案

#1


function f(){
  alert('OK');
}()

#2


JS文件引用错误
<html>
<head>
<script src="jstar.js">
</script>
</head>
<body onload="alert('hello');">
<body>
<html>

#3


肯定是路径有误

#4


<script  type="text/javascript" src="jstar.js">

#5


引入jstar.js 路径或是写法有问题

#6


估计是路径问题

#7


alert("OK"); 是双引号

#8


双引号是没有问题的。可能是你的路径不对。找不到。

#9


你们都错了,这个问题我曾经也找了好久,是因为函数名的小写问题。如果把页面和js分开单独文件,函数名为小写时,是调用不到的,这点我是用firebug查找到的,改成大写,就OK!去试试吧。
ps:7楼那位大虾,js中表示字符串时单引双引都可。。。

#10


引用 9 楼 hb308102796 的回复:
你们都错了,这个问题我曾经也找了好久,是因为函数名的小写问题。 如果把页面和js分开单独文件,函数名为小写时,是调用不到的,这点我是用firebug查找到的,改成大写,就OK!去试试吧。
ps:7楼那位大虾,js中表示字符串时单引双引都可。。。

有这一说?

#11


引用 10 楼 zoujp_xyz 的回复:
引用 9 楼 hb308102796 的回复:

你们都错了,这个问题我曾经也找了好久,是因为函数名的小写问题。如果把页面和js分开单独文件,函数名为小写时,是调用不到的,这点我是用firebug查找到的,改成大写,就OK!去试试吧。
ps:7楼那位大虾,js中表示字符串时单引双引都可。。。

有这一说?

有的,我用的时候是这样,小写时firebug提示找不到函数,改成大写就OK了。也找了我一个上午。。。

#12


引用 11 楼 hb308102796 的回复:
引用 10 楼 zoujp_xyz 的回复:

引用 9 楼 hb308102796 的回复:

你们都错了,这个问题我曾经也找了好久,是因为函数名的小写问题。如果把页面和js分开单独文件,函数名为小写时,是调用不到的,这点我是用firebug查找到的,改成大写,就OK!去试试吧。
ps:7楼那位大虾,js中表示字符串时单引双引都可。。。

有这一说?

有的,我用的时候是这样,……



肯定跟大小写没关系,要真是这样,我马上跳楼!!!你信不?
要不你把方法名换成ff看看呢?或者你的清下浏览器,或者看看是不是有方法同名了?

#13



用widow.onload = f;

#14


确认html和js文件用的相同的编码。比如都用utf-8。

#15


引用 12 楼 keyouea 的回复:
引用 11 楼 hb308102796 的回复:
引用 10 楼 zoujp_xyz 的回复:

引用 9 楼 hb308102796 的回复:

你们都错了,这个问题我曾经也找了好久,是因为函数名的小写问题。如果把页面和js分开单独文件,函数名为小写时,是调用不到的,这点我是用firebug查找到的,改成大写,就OK!去试试吧。
ps:7楼那位大虾,js中表示字符串时单引双引都可。……

唉,兄台何必如此执着呢?反正我当时遇到这问题是这样的。你非要说不是,那就是不呗,呵呵!我当时是同一页面下,大小写都可;分开时,调用不到开头小写的函数名。

#16


<html>
<head>
<script src="jstar.js">
</script>
</head>
<body onload="JavaScript:alert('hello');">
<body>
<html>

应该这样~~

#17


<script language="text/javascript" src="jstar.js">
</script>

改写为
<script language="javascript" src="jstar.js">
</script>
这样就OK了

#18


顶4楼

#19


怎么看你那单引号像是汉语版的 啊?

#20


language script 不赞成使用。规定脚本语言。请使用 type 属性代替它。 TF

#1


function f(){
  alert('OK');
}()

#2


JS文件引用错误
<html>
<head>
<script src="jstar.js">
</script>
</head>
<body onload="alert('hello');">
<body>
<html>

#3


肯定是路径有误

#4


<script  type="text/javascript" src="jstar.js">

#5


引入jstar.js 路径或是写法有问题

#6


估计是路径问题

#7


alert("OK"); 是双引号

#8


双引号是没有问题的。可能是你的路径不对。找不到。

#9


你们都错了,这个问题我曾经也找了好久,是因为函数名的小写问题。如果把页面和js分开单独文件,函数名为小写时,是调用不到的,这点我是用firebug查找到的,改成大写,就OK!去试试吧。
ps:7楼那位大虾,js中表示字符串时单引双引都可。。。

#10


引用 9 楼 hb308102796 的回复:
你们都错了,这个问题我曾经也找了好久,是因为函数名的小写问题。 如果把页面和js分开单独文件,函数名为小写时,是调用不到的,这点我是用firebug查找到的,改成大写,就OK!去试试吧。
ps:7楼那位大虾,js中表示字符串时单引双引都可。。。

有这一说?

#11


引用 10 楼 zoujp_xyz 的回复:
引用 9 楼 hb308102796 的回复:

你们都错了,这个问题我曾经也找了好久,是因为函数名的小写问题。如果把页面和js分开单独文件,函数名为小写时,是调用不到的,这点我是用firebug查找到的,改成大写,就OK!去试试吧。
ps:7楼那位大虾,js中表示字符串时单引双引都可。。。

有这一说?

有的,我用的时候是这样,小写时firebug提示找不到函数,改成大写就OK了。也找了我一个上午。。。

#12


引用 11 楼 hb308102796 的回复:
引用 10 楼 zoujp_xyz 的回复:

引用 9 楼 hb308102796 的回复:

你们都错了,这个问题我曾经也找了好久,是因为函数名的小写问题。如果把页面和js分开单独文件,函数名为小写时,是调用不到的,这点我是用firebug查找到的,改成大写,就OK!去试试吧。
ps:7楼那位大虾,js中表示字符串时单引双引都可。。。

有这一说?

有的,我用的时候是这样,……



肯定跟大小写没关系,要真是这样,我马上跳楼!!!你信不?
要不你把方法名换成ff看看呢?或者你的清下浏览器,或者看看是不是有方法同名了?

#13



用widow.onload = f;

#14


确认html和js文件用的相同的编码。比如都用utf-8。

#15


引用 12 楼 keyouea 的回复:
引用 11 楼 hb308102796 的回复:
引用 10 楼 zoujp_xyz 的回复:

引用 9 楼 hb308102796 的回复:

你们都错了,这个问题我曾经也找了好久,是因为函数名的小写问题。如果把页面和js分开单独文件,函数名为小写时,是调用不到的,这点我是用firebug查找到的,改成大写,就OK!去试试吧。
ps:7楼那位大虾,js中表示字符串时单引双引都可。……

唉,兄台何必如此执着呢?反正我当时遇到这问题是这样的。你非要说不是,那就是不呗,呵呵!我当时是同一页面下,大小写都可;分开时,调用不到开头小写的函数名。

#16


<html>
<head>
<script src="jstar.js">
</script>
</head>
<body onload="JavaScript:alert('hello');">
<body>
<html>

应该这样~~

#17


<script language="text/javascript" src="jstar.js">
</script>

改写为
<script language="javascript" src="jstar.js">
</script>
这样就OK了

#18


顶4楼

#19


怎么看你那单引号像是汉语版的 啊?

#20


language script 不赞成使用。规定脚本语言。请使用 type 属性代替它。 TF

#21