我正在尝试向我的元素添加第二个onclick
函数,但到目前为止还没有成功,尝试使用不同的分隔符,相同的引用等但是它还没有用。
这是代码:
<a title="course" onclick="if(document.getElementById('spoiler') .style.display=='none') {document.getElementById('spoiler') .style.display=''}else{document.getElementById('spoiler') .style.display='none'};" onclick="if(document.getElementById('nav-res') .style.display=='block') {document.getElementById('nav-res') .style.display='none'};">Course</a>
有谁可以指出我做错了什么?非常感谢
答案 0 :(得分:2)
您无法添加多个onclick
语句
您需要在命令之间添加分号(;)。
<a href="#" onclick="alert('this is command 1'); alert('this is command 2');">click me</a>
//---------------------------------------------^---------------------------^
但是,我不会按照你这样做的方式去做 我会做一个单独的功能,无论你想做什么 将所有内容放入html(内联)中并不是一种好习惯。
我会这样做:
<a id="" onclick="clickme()">
<script>
function clickme() {
// action 1
if( document.getElementById('spoiler').style.display=='none' ){
document.getElementById('spoiler').style.display='';
}
else{
document.getElementById('spoiler').style.display='none';
};
// action 2
if( document.getElementById('nav-res').style.display=='block' ){
document.getElementById('nav-res') .style.display='none';
}
}
</script>
答案 1 :(得分:2)
我鼓励您尝试使用事件监听器:
<a href='#' id='mytag'>
然后:
<script>
document.getElementById('mytag').addEventListener("click", function(){
alert(1)
}, false);
document.getElementById('mytag').addEventListener("click", function(){
alert(2)
}, false);
</script>
或使用jquery:
<script>
$('#mytag').click(function(){ alert(1) })
$('#mytag').click(function(){ alert(2) })
</script>