js中如何实现一个按钮只有在某个特定的按钮按下后,才能发挥作用 5
页面上有几个按钮:模式选择、窗口控制、.......(为了叙述方便,中间的按钮省略了)、画面校准。我想实现只有点击了窗口控制后,点击画面校准才有反应,否则没有反应。<ta...
页面上有几个按钮:模式选择、窗口控制、.......(为了叙述方便,中间的按钮省略了)、画面校准。
我想实现只有点击了窗口控制后,点击画面校准才有反应,否则没有反应。
<table id="t1">
<tr>
<td id="moren"><a href="model.php" target="reg" onclick="change(0)">模式选择</a></td>
</tr>
<tr>
<td><a href="window2.php" target="reg" onclick="change(1)">窗口控制</a></td>
</tr>
<tr>
<td id="jiao">画面校准</td>
</tr>
</table>
function change(val){
var list=document.getElementsByTagName('td');
for(var i=0;i<2;i++){
list[i].style.background="url('./image/second_button_on_left.jpg')";
}
list[val].style.background="url('./image/second_button_off_h.jpg')";
if(val==1){
list[2].onclick=act;
}else{
list[2].onclick=null;
}
}
function act(){//这个函数不是重点,主要是实现点击画面校准后的按钮变色反应
document.getElementById("jiao").onmousedown=function(){
document.getElementById("jiao").style.background="url('./image/second_button_off_h.jpg')";
}
document.getElementById("jiao").onmouseup=function(){
document.getElementById("jiao").style.background="url('./image/second_button_on_left.jpg')";
}
}
我觉得我写的没错啊,可是有一个情况是:只要先点击模式选择,再点画面校准时没反应,要是点击了窗口控制,再点模式选择后,再点画面校准后就有反应了。各位大侠给看一下,是哪里出了问题 展开
我想实现只有点击了窗口控制后,点击画面校准才有反应,否则没有反应。
<table id="t1">
<tr>
<td id="moren"><a href="model.php" target="reg" onclick="change(0)">模式选择</a></td>
</tr>
<tr>
<td><a href="window2.php" target="reg" onclick="change(1)">窗口控制</a></td>
</tr>
<tr>
<td id="jiao">画面校准</td>
</tr>
</table>
function change(val){
var list=document.getElementsByTagName('td');
for(var i=0;i<2;i++){
list[i].style.background="url('./image/second_button_on_left.jpg')";
}
list[val].style.background="url('./image/second_button_off_h.jpg')";
if(val==1){
list[2].onclick=act;
}else{
list[2].onclick=null;
}
}
function act(){//这个函数不是重点,主要是实现点击画面校准后的按钮变色反应
document.getElementById("jiao").onmousedown=function(){
document.getElementById("jiao").style.background="url('./image/second_button_off_h.jpg')";
}
document.getElementById("jiao").onmouseup=function(){
document.getElementById("jiao").style.background="url('./image/second_button_on_left.jpg')";
}
}
我觉得我写的没错啊,可是有一个情况是:只要先点击模式选择,再点画面校准时没反应,要是点击了窗口控制,再点模式选择后,再点画面校准后就有反应了。各位大侠给看一下,是哪里出了问题 展开
展开全部
<!DOCTYPE html>
<html>
<body>
<script>
function change(val){
var list=document.getElementsByTagName('td');
if(val==1){
list[2].onclick=act;
}else{
list[2].onclick=null;
}
}
function act(){//这个函数不是重点,主要是实现点击画面校准后的按钮变色反应
alert("点我了");
}
</script>
<table id="t1">
<tr><td id="moren"><a href="#"onclick="change(0)">模式选择</a></td></tr>
<tr><td><a href="#" onclick="change(1)">窗口控制</a></td></tr>
<tr><td id="jiao"><a href="#">画面校准</a></td></tr>
</table>
</body>
</html>
应该是你act函数里报错了,你可以在act加个alert(),看是否有弹出来
<html>
<body>
<script>
function change(val){
var list=document.getElementsByTagName('td');
if(val==1){
list[2].onclick=act;
}else{
list[2].onclick=null;
}
}
function act(){//这个函数不是重点,主要是实现点击画面校准后的按钮变色反应
alert("点我了");
}
</script>
<table id="t1">
<tr><td id="moren"><a href="#"onclick="change(0)">模式选择</a></td></tr>
<tr><td><a href="#" onclick="change(1)">窗口控制</a></td></tr>
<tr><td id="jiao"><a href="#">画面校准</a></td></tr>
</table>
</body>
</html>
应该是你act函数里报错了,你可以在act加个alert(),看是否有弹出来
追问
按你说的测试是没事的,但是加上我写的那些还是不行
追答
在act函数的最前面加上alert()弹不出来么?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询