stst()
onclick=stst 这个有的时候不能用
onclick=stst()
onclick="stst()"
<body onclick="stst()">
而且以上调用的效果也不同。
哪位高手能讲授一下。到底是怎么回事。
初学者,给分少一点,高手请谅解。
14 个解决方案
#1
看你写在哪呢!
第一stst()使用地方
<input id="text1" onclick="stst()" />正确
<input id="text1" onclick=stst() />正确 属性可以省去引号,单引号也可以
<input id="text1" onclick="stst" />错误
第二stst使用地方
document.getElementById("text1").onclick=stst正确
document.getElementById("text1").onclick=stst()错误
如果有该函数有参数要传递可以用匿名函数。
document.getElementById("text1").onclick=function(){stst(param)}
第三 stst() stst都可以使用的地方
window.setInterval(stst,1000); 正确
window.setInterval(stst(),1000);正确
window.setInterval("stst()",1000);正确
第一stst()使用地方
<input id="text1" onclick="stst()" />正确
<input id="text1" onclick=stst() />正确 属性可以省去引号,单引号也可以
<input id="text1" onclick="stst" />错误
第二stst使用地方
document.getElementById("text1").onclick=stst正确
document.getElementById("text1").onclick=stst()错误
如果有该函数有参数要传递可以用匿名函数。
document.getElementById("text1").onclick=function(){stst(param)}
第三 stst() stst都可以使用的地方
window.setInterval(stst,1000); 正确
window.setInterval(stst(),1000);正确
window.setInterval("stst()",1000);正确
#2
感谢!
但为什么:
以下是正确的,
document.oncontextmenu = stest ; function stest() {return false}
但这样就错误了。
<body oncontextmenu = stest()><script>function stest() {return false}</script>
而要用:
<body oncontextmenu = stest()><script>function stest() {event.returnValue = false}</script>
或用
<BODY oncontextmenu="return false">
楼上或其他高手给指点一下。
但为什么:
以下是正确的,
document.oncontextmenu = stest ; function stest() {return false}
但这样就错误了。
<body oncontextmenu = stest()><script>function stest() {return false}</script>
而要用:
<body oncontextmenu = stest()><script>function stest() {event.returnValue = false}</script>
或用
<BODY oncontextmenu="return false">
楼上或其他高手给指点一下。
#3
document.oncontextmenu
和这<body oncontextmenu = stest()> 是不等同的
因为document下有很多属性,包括document.body
因为body没有oncentextmenu属性,只有document有吧
#4
<body oncontextmenu ='return stest();'>
#5
但可用以下语句:
document.body.oncontextmenu = stest ; function stest() {return false}
但以下就错了:
<body oncontextmenu = stest()> <script>function stest() {return false} </script>
还是烦您或哪位高手指点一下吧!
也感谢4楼。
#6
如果在 JavaScript 中使用 document.body.oncontextmenu = stest(); 的话,
就是把 stest 的执行结果给了 oncontextmenu 事件,但是这个事件要求的是一个
函数的引用的,并不是函数的执行结果,而 stest 就是 stest() 函数的引用。
如果写成 document.body.oncontextmenu = 'stest()'; 的话,那么就表示把
一个字符串给了 oncontextmenu 事件,这显然也是不正确的。
而使用 <body oncontextmenu = stest()> 时,这是 HTML 中的写法,也就是在
触发 oncontextmenu 事件时去调用的函数,事件不触发时这个函数根本就不会执行。
就是把 stest 的执行结果给了 oncontextmenu 事件,但是这个事件要求的是一个
函数的引用的,并不是函数的执行结果,而 stest 就是 stest() 函数的引用。
如果写成 document.body.oncontextmenu = 'stest()'; 的话,那么就表示把
一个字符串给了 oncontextmenu 事件,这显然也是不正确的。
而使用 <body oncontextmenu = stest()> 时,这是 HTML 中的写法,也就是在
触发 oncontextmenu 事件时去调用的函数,事件不触发时这个函数根本就不会执行。
#7
bao110908讲得好象有道理,与我问题解决越来越近。但您讲的我有些不太明白。请教一下:
函数的执行结果,这个概念很好理解。 函数的引用不太容易理解,我用变量来试验如:
tt=stest;alert(tt);
发现是一个函数体。即function test(){}。
如果不是一个事件,是一个变量来调用函数,tt=stest 和 tt=stest()有什么区别呢。
HTML中的写法,去调用的函数;是“函数的执行结果”吗?
重要的一点,您能讲一下为什么达到同样的效果函数,引用的方法不同,而且最关键的是内容不同。
多谢!
函数的执行结果,这个概念很好理解。 函数的引用不太容易理解,我用变量来试验如:
tt=stest;alert(tt);
发现是一个函数体。即function test(){}。
如果不是一个事件,是一个变量来调用函数,tt=stest 和 tt=stest()有什么区别呢。
HTML中的写法,去调用的函数;是“函数的执行结果”吗?
重要的一点,您能讲一下为什么达到同样的效果函数,引用的方法不同,而且最关键的是内容不同。
多谢!
#8
bao110908讲得好象有道理,与我问题解决越来越近。但您讲的我有些不太明白。请教一下:
函数的执行结果,这个概念很好理解。 函数的引用不太容易理解,我用变量来试验如:
tt=stest;alert(tt);
发现是一个函数体。即function test(){}。
如果不是一个事件,是一个变量来调用函数,tt=stest 和 tt=stest()有什么区别呢。
HTML中的写法,去调用的函数;是“函数的执行结果”吗?
重要的一点,您能讲一下为什么达到同样的效果函数,引用的方法不同,而且最关键的是内容不同。
多谢!
函数的执行结果,这个概念很好理解。 函数的引用不太容易理解,我用变量来试验如:
tt=stest;alert(tt);
发现是一个函数体。即function test(){}。
如果不是一个事件,是一个变量来调用函数,tt=stest 和 tt=stest()有什么区别呢。
HTML中的写法,去调用的函数;是“函数的执行结果”吗?
重要的一点,您能讲一下为什么达到同样的效果函数,引用的方法不同,而且最关键的是内容不同。
多谢!
#9
javascript中你查查()的意思
#10
什么意思。怎么查?
#11
总结的很好啊
#12
重要的一点,谁能讲一下为什么达到同样的效果函数,不但引用的方法不同,而且最关键的是内容不同。
多谢!
多谢!
#13
up
#14
up
#1
看你写在哪呢!
第一stst()使用地方
<input id="text1" onclick="stst()" />正确
<input id="text1" onclick=stst() />正确 属性可以省去引号,单引号也可以
<input id="text1" onclick="stst" />错误
第二stst使用地方
document.getElementById("text1").onclick=stst正确
document.getElementById("text1").onclick=stst()错误
如果有该函数有参数要传递可以用匿名函数。
document.getElementById("text1").onclick=function(){stst(param)}
第三 stst() stst都可以使用的地方
window.setInterval(stst,1000); 正确
window.setInterval(stst(),1000);正确
window.setInterval("stst()",1000);正确
第一stst()使用地方
<input id="text1" onclick="stst()" />正确
<input id="text1" onclick=stst() />正确 属性可以省去引号,单引号也可以
<input id="text1" onclick="stst" />错误
第二stst使用地方
document.getElementById("text1").onclick=stst正确
document.getElementById("text1").onclick=stst()错误
如果有该函数有参数要传递可以用匿名函数。
document.getElementById("text1").onclick=function(){stst(param)}
第三 stst() stst都可以使用的地方
window.setInterval(stst,1000); 正确
window.setInterval(stst(),1000);正确
window.setInterval("stst()",1000);正确
#2
感谢!
但为什么:
以下是正确的,
document.oncontextmenu = stest ; function stest() {return false}
但这样就错误了。
<body oncontextmenu = stest()><script>function stest() {return false}</script>
而要用:
<body oncontextmenu = stest()><script>function stest() {event.returnValue = false}</script>
或用
<BODY oncontextmenu="return false">
楼上或其他高手给指点一下。
但为什么:
以下是正确的,
document.oncontextmenu = stest ; function stest() {return false}
但这样就错误了。
<body oncontextmenu = stest()><script>function stest() {return false}</script>
而要用:
<body oncontextmenu = stest()><script>function stest() {event.returnValue = false}</script>
或用
<BODY oncontextmenu="return false">
楼上或其他高手给指点一下。
#3
document.oncontextmenu
和这<body oncontextmenu = stest()> 是不等同的
因为document下有很多属性,包括document.body
因为body没有oncentextmenu属性,只有document有吧
#4
<body oncontextmenu ='return stest();'>
#5
但可用以下语句:
document.body.oncontextmenu = stest ; function stest() {return false}
但以下就错了:
<body oncontextmenu = stest()> <script>function stest() {return false} </script>
还是烦您或哪位高手指点一下吧!
也感谢4楼。
#6
如果在 JavaScript 中使用 document.body.oncontextmenu = stest(); 的话,
就是把 stest 的执行结果给了 oncontextmenu 事件,但是这个事件要求的是一个
函数的引用的,并不是函数的执行结果,而 stest 就是 stest() 函数的引用。
如果写成 document.body.oncontextmenu = 'stest()'; 的话,那么就表示把
一个字符串给了 oncontextmenu 事件,这显然也是不正确的。
而使用 <body oncontextmenu = stest()> 时,这是 HTML 中的写法,也就是在
触发 oncontextmenu 事件时去调用的函数,事件不触发时这个函数根本就不会执行。
就是把 stest 的执行结果给了 oncontextmenu 事件,但是这个事件要求的是一个
函数的引用的,并不是函数的执行结果,而 stest 就是 stest() 函数的引用。
如果写成 document.body.oncontextmenu = 'stest()'; 的话,那么就表示把
一个字符串给了 oncontextmenu 事件,这显然也是不正确的。
而使用 <body oncontextmenu = stest()> 时,这是 HTML 中的写法,也就是在
触发 oncontextmenu 事件时去调用的函数,事件不触发时这个函数根本就不会执行。
#7
bao110908讲得好象有道理,与我问题解决越来越近。但您讲的我有些不太明白。请教一下:
函数的执行结果,这个概念很好理解。 函数的引用不太容易理解,我用变量来试验如:
tt=stest;alert(tt);
发现是一个函数体。即function test(){}。
如果不是一个事件,是一个变量来调用函数,tt=stest 和 tt=stest()有什么区别呢。
HTML中的写法,去调用的函数;是“函数的执行结果”吗?
重要的一点,您能讲一下为什么达到同样的效果函数,引用的方法不同,而且最关键的是内容不同。
多谢!
函数的执行结果,这个概念很好理解。 函数的引用不太容易理解,我用变量来试验如:
tt=stest;alert(tt);
发现是一个函数体。即function test(){}。
如果不是一个事件,是一个变量来调用函数,tt=stest 和 tt=stest()有什么区别呢。
HTML中的写法,去调用的函数;是“函数的执行结果”吗?
重要的一点,您能讲一下为什么达到同样的效果函数,引用的方法不同,而且最关键的是内容不同。
多谢!
#8
bao110908讲得好象有道理,与我问题解决越来越近。但您讲的我有些不太明白。请教一下:
函数的执行结果,这个概念很好理解。 函数的引用不太容易理解,我用变量来试验如:
tt=stest;alert(tt);
发现是一个函数体。即function test(){}。
如果不是一个事件,是一个变量来调用函数,tt=stest 和 tt=stest()有什么区别呢。
HTML中的写法,去调用的函数;是“函数的执行结果”吗?
重要的一点,您能讲一下为什么达到同样的效果函数,引用的方法不同,而且最关键的是内容不同。
多谢!
函数的执行结果,这个概念很好理解。 函数的引用不太容易理解,我用变量来试验如:
tt=stest;alert(tt);
发现是一个函数体。即function test(){}。
如果不是一个事件,是一个变量来调用函数,tt=stest 和 tt=stest()有什么区别呢。
HTML中的写法,去调用的函数;是“函数的执行结果”吗?
重要的一点,您能讲一下为什么达到同样的效果函数,引用的方法不同,而且最关键的是内容不同。
多谢!
#9
javascript中你查查()的意思
#10
什么意思。怎么查?
#11
总结的很好啊
#12
重要的一点,谁能讲一下为什么达到同样的效果函数,不但引用的方法不同,而且最关键的是内容不同。
多谢!
多谢!
#13
up
#14
up