我对javascript非常陌生,并且一直在尝试开发一些东西来帮助我教授有关二进制编码器和解码器的课程。这是我想出的代码:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.0/jquery.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$('#pressme').click(function(){
var randomnumber = Math.floor(Math.random() * 8);
if(randomnumber == 0){
$('#i_1').removeClass.addClass('wire_inactive');
$('#i_2').removeClass.addClass('wire_inactive');
$('#i_3').removeClass.addClass('wire_inactive');
$('#o_0').removeClass.addClass('wire_active');
$('#o_1').removeClass.addClass('wire_inactive');
$('#o_2').removeClass.addClass('wire_inactive');
$('#o_3').removeClass.addClass('wire_inactive');
$('#o_4').removeClass.addClass('wire_inactive');
$('#o_5').removeClass.addClass('wire_inactive');
$('#o_6').removeClass.addClass('wire_inactive');
$('#o_7').removeClass.addClass('wire_inactive');
}
if(randomnumber == 1){
$('#i_1').removeClass.addClass('wire_active');
$('#i_2').removeClass.addClass('wire_inactive');
$('#i_3').removeClass.addClass('wire_inactive');
$('#o_0').removeClass.addClass('wire_inactive');
$('#o_1').removeClass.addClass('wire_active');
$('#o_2').removeClass.addClass('wire_inactive');
$('#o_3').removeClass.addClass('wire_inactive');
$('#o_4').removeClass.addClass('wire_inactive');
$('#o_5').removeClass.addClass('wire_inactive');
$('#o_6').removeClass.addClass('wire_inactive');
$('#o_7').removeClass.addClass('wire_inactive');
}
if(randomnumber == 2){
$('#i_1').removeClass.addClass('wire_inactive');
$('#i_2').removeClass.addClass('wire_active');
$('#i_3').removeClass.addClass('wire_inactive');
$('#o_0').removeClass.addClass('wire_inactive');
$('#o_1').removeClass.addClass('wire_inactive');
$('#o_2').removeClass.addClass('wire_active');
$('#o_3').removeClass.addClass('wire_inactive');
$('#o_4').removeClass.addClass('wire_inactive');
$('#o_5').removeClass.addClass('wire_inactive');
$('#o_6').removeClass.addClass('wire_inactive');
$('#o_7').removeClass.addClass('wire_inactive');
}
if(randomnumber == 3){
$('#i_1').removeClass.addClass('wire_active');
$('#i_2').removeClass.addClass('wire_active');
$('#i_3').removeClass.addClass('wire_inactive');
$('#o_0').removeClass.addClass('wire_inactive');
$('#o_1').removeClass.addClass('wire_inactive');
$('#o_2').removeClass.addClass('wire_inactive');
$('#o_3').removeClass.addClass('wire_active');
$('#o_4').removeClass.addClass('wire_inactive');
$('#o_5').removeClass.addClass('wire_inactive');
$('#o_6').removeClass.addClass('wire_inactive');
$('#o_7').removeClass.addClass('wire_inactive');
}
if(randomnumber == 4){
$('#i_1').removeClass.addClass('wire_inactive');
$('#i_2').removeClass.addClass('wire_inactive');
$('#i_3').removeClass.addClass('wire_active');
$('#o_0').removeClass.addClass('wire_inactive');
$('#o_1').removeClass.addClass('wire_inactive');
$('#o_2').removeClass.addClass('wire_inactive');
$('#o_3').removeClass.addClass('wire_inactive');
$('#o_4').removeClass.addClass('wire_active');
$('#o_5').removeClass.addClass('wire_inactive');
$('#o_6').removeClass.addClass('wire_inactive');
$('#o_7').removeClass.addClass('wire_inactive');
}
if(randomnumber == 5){
$('#i_1').removeClass.addClass('wire_active');
$('#i_2').removeClass.addClass('wire_inactive');
$('#i_3').removeClass.addClass('wire_active');
$('#o_0').removeClass.addClass('wire_inactive');
$('#o_1').removeClass.addClass('wire_inactive');
$('#o_2').removeClass.addClass('wire_inactive');
$('#o_3').removeClass.addClass('wire_inactive');
$('#o_4').removeClass.addClass('wire_inactive');
$('#o_5').removeClass.addClass('wire_active');
$('#o_6').removeClass.addClass('wire_inactive');
$('#o_7').removeClass.addClass('wire_inactive');
}
if(randomnumber == 6){
$('#i_1').removeClass.addClass('wire_inactive');
$('#i_2').removeClass.addClass('wire_active');
$('#i_3').removeClass.addClass('wire_active');
$('#o_0').removeClass.addClass('wire_inactive');
$('#o_1').removeClass.addClass('wire_inactive');
$('#o_2').removeClass.addClass('wire_inactive');
$('#o_3').removeClass.addClass('wire_inactive');
$('#o_4').removeClass.addClass('wire_inactive');
$('#o_5').removeClass.addClass('wire_inactive');
$('#o_6').removeClass.addClass('wire_active');
$('#o_7').removeClass.addClass('wire_inactive');
}
if(randomnumber == 7){
$('#i_1').removeClass.addClass('wire_active');
$('#i_2').removeClass.addClass('wire_active');
$('#i_3').removeClass.addClass('wire_active');
$('#o_0').removeClass.addClass('wire_inactive');
$('#o_1').removeClass.addClass('wire_inactive');
$('#o_2').removeClass.addClass('wire_inactive');
$('#o_3').removeClass.addClass('wire_inactive');
$('#o_4').removeClass.addClass('wire_inactive');
$('#o_5').removeClass.addClass('wire_inactive');
$('#o_6').removeClass.addClass('wire_inactive');
$('#o_7').removeClass.addClass('wire_active');
}
});
});
</script>
目的是根据随机数生成器生成的数量切换输入线(标记为i_0到i_3)和输出线(标记为o_0到o_7)的类别。但是,当我单击按钮(我将其ID设置为pressme)时,却遇到了TypeError错误。谁能为我指出解决这个问题的正确方向?
最佳答案
removeClass
没有名为addClass
的成员,因此您不能编写removeClass.addClass('')
。 removeClass
是一个函数,您必须调用它:
$('#o_7').removeClass('wire_inactive').addClass('wire_active');
您可以将所有代码减少为
// inactivate all
$('#o_0, #o_1, #o_2, #o_3, #o_4, #o_5, #o_6, #o_7').removeClass('wire_active').addClass('wire_inactive');
// activate random item
$('#o_' + randomnumber).removeClass('wire_inactive').addClass('wire_active');
...并对
i_
项目应用类似的逻辑;我不确定您在开启和关闭它们之间的逻辑是...关于javascript - jQuery未捕获的TypeError,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8285945/