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 份
- 解答问题 36712 个
从一个不会编程的小白到一个老司机是需要过程的,首先得入门,学习基础知识,然后才能进阶,最后再到精通,本专题是你走进前端世界的不二选择!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星