网页布局方面应该没大问题。
难点在jQuery部分。一开始想出两种思路,第一个是按着老师的思路下来的,结果最后没有实现,失败在表达式不能正确输出,而且运算也不能正确进行,现已被注释在js里。第二个思路没有用到选择结构,而是直接触动按钮,实现每个按钮对应的事件。由于对这门语言的陌生,所认识的语句不多,做起来很有难度。在导师的讲解里,学到了用$('table').find('td').click(function(){})的方法(单击单元格获取内容)获取表格里内容的语句。而我的思路里这个事件并不合适,经过查找资料并多次修改终于找到了获取输入框中动态value的方法:$('input#num').val。eval() 函数可将字符串转换为代码执行,并返回一个或多个值。
HTML部分
js部分
$(function(){
alert('welcome to calculator');
// var equ='';
// $("button").click(function(){
// var sr1=$('input#num1').val();
// equ+=sr1;
// var sr2=$('input#num2').val();
// equ+=sr2;
// var val=$(this).html();
// equ+=val;
// $('#exp').text(equ);
// var num1=equ[0];
// var num2=equ[2];
// var operator=equ[1];
// if(operator=='+'){
// $('#res').text(parseInt(num1)+parseInt(num2));
// }
// else if(operator=='-'){
// $('#res').text(num1-num2);
// }
// else if(operator=='*'){
// $('#res').text(num1*num2);
// }
// else if(operator=='/'){
// $('#res').text(num1/num2);
// }
// })
$("#b1").click(function(){
var num1=$('input#num1').val();//获取输入框里的内容的方法$('input#num').val
var num2=$('input#num2').val();
var num3=eval(num1)+eval(num2);
$('#exp').text(eval(num1)+'➕'+eval(num2)+'=');
$("#res").text(num3);
})
$("#b2").click(function(){
var num1=$('input#num1').val();
var num2=$('input#num2').val();
var num3=eval(num1)-eval(num2);
$('#exp').text(eval(num1)+'➖'+eval(num2)+'=');
$("#res").text(num3);
})
$("#b3").click(function(){
var num1=$('input#num1').val();
var num2=$('input#num2').val();
var num3=eval(num1)*eval(num2);
$('#exp').text(eval(num1)+'✖'+eval(num2)+'=');
$("#res").text(num3);
})
$("#b4").click(function(){
var num1=$('input#num1').val();
var num2=$('input#num2').val();
var num3=eval(num1)/eval(num2);
$('#exp').text(eval(num1)+'➗'+eval(num2)+'=');
$("#res").text(num3);
})
})
先附在这儿,今晚可以睡得踏实一点了。。。