条形图投票demo

//老师上课布置的作业,细节问题有点多。思路:用两个div盒子填充背景颜色,利用margin调整位置使其一上一下覆盖。在两个div各写入小数,0.50和0.50以便进行绑定。思考的时候原本以为会用到z-index来调整大小,结果空操心。遇见问题:    1.JS设置绑定事件时出现问题,小数能发生变化但是变化规律为 1 2 3 4 5...与原先打算每次点击按钮加1不一致,后来查阅资料发现是因为每次...
摘要由CSDN通过智能技术生成

//老师上课布置的作业,细节问题有点多。

思路:用两个div盒子填充背景颜色,利用margin调整位置使其一上一下覆盖。在两个div各写入小数,0.50和0.50以便进行绑定。思考的时候原本以为会用到z-index来调整大小,结果空操心。

遇见问题:

    1.JS设置绑定事件时出现问题,小数能发生变化但是变化规律为 1 2 3 4 5...与原先打算每次点击按钮加1不一致,后来查阅资料发现是因为每次点击按钮绑定事件并未解绑,导致累加。搜索后发现只有Jq有解决方法,但还未了解太深入遂放弃。

    2.点击按钮第一次无反应,第二次 才有反应。经查阅资料发现第一次点击只是为按钮添加了事件监听器,第二次点击开始才是运行事件。

    3.浏览器出现Can't set property 'onclick' of null,原因为将js放在head中,同时绑定了onclick。dom0级事件处理程序要在按钮加载完毕之后才能使用。所以应放在后面靠近</body>处

    4.浮点数直接相加,运算结果不精确。原因是js浮点运算是转化为2进制进行运算这里出现了第一次的误差,然后又从2进制转化为10进制的结果,这里是第二次误差。javascript是一门弱类型的语言并不像c++/java一样已经有封装的函数来避免这个问题。

方法一:指定要保留的小数位数(0.1+0.2).toFixed(1) = 0.3;这个方法toFixed是进行四舍五入的也不是很精准,不同浏览器对toFixed的计算结果存在差异。

方法二:把需要计算的数字升级(乘以10的n次幂)成计算机能

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值