HTML事件
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Document</title> <style type="text/css"> .btn{width: 140px;height: 30px;line-height: 30px;background: #00f;color: #fff;font-size: 14px;text-align:center;border-radius:5px;cursor:pointer;margin-top: 30px;} </style> </head> <body> <input type="button" value="弹出" onclick="alert('我是按钮')"> <div id="btn" class="btn" onmouseover="mouseoverFn()" onmouseout="mouseoutFn()">开始</div> <script type="text/javascript"> var btn=document.getElementById("btn"); function mouseoverFn(btn){ btn.style.background="#f00"; } function mouseoutFn(btn){ btn.style.background="#00f"; } </script> </body> </html>
后台报错,那里写错了?在onclick()事件中我不想用this了,想利用document.getElementById(),怎么就不行了呢。另,老师对于HTML事件中调用的函数名后面是必须要加()的吗?
53
收起
正在回答 回答被采纳积分+1
3回答
qq_诶姆_0
2017-08-23 14:22:53
private void addOnClick(Element nodeElement,TopoNode node){ //<menu id="hideNode" label="匿名函数" onclick="xxx()" /> TopoNodeType type = node.type ; if(type == TopoNodeType.NODE && NodeUtil.isChild((String) node.getAttribute("type"))){ createMenu(nodeElement,"查看日志","viewNodeLog") ; createMenu(nodeElement,"查看告警","viewNodeEvent") ; }else if(type == TopoNodeType.DATASOURCE){ String deviceIp = node.getAttribute("deviceIp").toString() ; String securityObjectType = (String) node.getAttribute("securityObjectType") ; if(SID.currentUser().getAuthority().hasAuthority(deviceIp, securityObjectType)){ createMenu(nodeElement,"查看日志","viewDataSourceLog") ; createMenu(nodeElement,"查看报表","viewDataSourceReport") ; } } } private Element createMenu(Element nodeElement,String label,String onclick){ Element menu = nodeElement.addElement("menu") ; menu.addAttribute("id", UUIDUtils.compactUUID()) ; menu.addAttribute("label", label) ; menu.addAttribute("onclick", onclick) ; menu.addAttribute("source", nodeElement.attributeValue("id")) ; return menu ; }
上面的代码太乱了,重写了一下
老师,这个是在java里面的两个方法,这里的onclick后面接入的方法名,比如createMenu(nodeElement,"查看日志","viewDataSourceLog") ;这种viewDataSourceLog后面怎么不加()呢?这样在.java文件创建的Document的标签元素中会自动识别onclick事件给它加上()吗?
好帮手慕糖
2017-08-23 10:41:58
你好,单击事件是没有问题的呀,报错的是鼠标移入移出的事件,这里没有传参数,然后设置的时候,就不需要设置形参,且若在HTML中,这里是需要添加()的。修改的代码可参考下列代码:
<input type="button" value="弹出" onclick="alert('我是按钮')"> <div id="btn" class="btn" onmouseover="mouseoverFn()" onmouseout="mouseoutFn()">开始</div> <script type="text/javascript"> var btn=document.getElementById("btn"); function mouseoverFn(){ btn.style.background="#f00"; } function mouseoutFn(){ btn.style.background="#00f"; } </script>
祝学习愉快~
前端小白入门系列课程
- 参与学习 人
- 提交作业 11218 份
- 解答问题 36713 个
从一个不会编程的小白到一个老司机是需要过程的,首先得入门,学习基础知识,然后才能进阶,最后再到精通,本专题是你走进前端世界的不二选择!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星