新学JS,这是正确的代码:
<html>
<body>
<p><a href="1111.html" id="cat1">图片1</a></p>
<div><span id="show"></span></div>
</body>
</html>window.onload=init;
function init()
{
var show=document.getElementById("cat1");
show.onclick=onshow;
}function onshow()
{
document.getElementById("show").innerHTML="测试成功";
return false;
}但如果我把JS代码修改为带参数函数(红色为修改部分)
function init()
{
var show=document.getElementById("cat1");
show.onclick=onshow("测试成功");
}
function onshow(msg)
{
document.getElementById("show").innerHTML=msg;
return false;
}代码就是错误的了,而且代码会完全忽略onclick事件,这是为什么?
<html>
<body>
<p><a href="1111.html" id="cat1">图片1</a></p>
<div><span id="show"></span></div>
</body>
</html>window.onload=init;
function init()
{
var show=document.getElementById("cat1");
show.onclick=onshow;
}function onshow()
{
document.getElementById("show").innerHTML="测试成功";
return false;
}但如果我把JS代码修改为带参数函数(红色为修改部分)
function init()
{
var show=document.getElementById("cat1");
show.onclick=onshow("测试成功");
}
function onshow(msg)
{
document.getElementById("show").innerHTML=msg;
return false;
}代码就是错误的了,而且代码会完全忽略onclick事件,这是为什么?
解决方案 »
- 表单禁止提交后,再允许提交,无法进入后台代码的问题
- JS双击table中的某一行,实现页面跳转的问题
- 如何用javascript的正则 表达式匹配一个地址后面的参数对
- 关于javascipt Base64加密用 Vbscript解密
- JavaScript与ActiveX控件的属性页
- 如何使用脚本调用浏览器的页面设置和打印预览功能?
- 怎样动态的设定onChange事件??
- 用window.open打开的全屏窗口顶端看起来有些凹边,不像平时的窗口?怎样能出现一条凹线?,像IE正常窗口那样的?
- 急!!如何截取带路径的文件名
- layui后台布局+实现页面的内部跳转(iframe)
- google的日历js代码
- div 和 <select> 的问题
2. onshow("测试成功") 表示执行这个方法
3. onclick = 后面显然只能跟一个Function
4. show.onclick = onshow("测试成功") 实际上等于 show.onclick = false
(因为你执行了这个方法,return false)
5. 想传参可以这样写
show.onclick = function(){
onshow("测试成功");
}
或者
function onshow(msg){
return function(msg){
//......
}
}
不知道写错了没,思路就是这样的,搞清楚原理就好
<body>
<p> <a href="#" id="cat1">图片1 </a> </p>
<div> <span id="show"> </span> </div> <script>
window.onload=init;
function init()
{
var show=document.getElementById("cat1");
show.onclick= function(){onshow("测试成功")};
} function onshow(msg)
{
document.getElementById("show").innerHTML=msg;
return false;
} </script> </body>
</html>