个人小项目:现有12个小球和一个天平,小球中有一个重量与其它的不同,称重几次能将这个小球找出来

个人小项目:现有12个小球和一个天平,小球中有一个重量与其它的不同,称重几次能将这个小球找出来

写这个小项目的心思起源于一个知乎问题:假设现在有12个小球,其中一个重量与其他的不同,至少称多少次可以称出来,用JQuery写了一个页面来实现,不过因为只学习了一周的Jquery,有点苦手,不过好歹写出来了,源码贴在了页面底部,

第一步:业务分析:

1.既然是模拟称重的过程,那么需要定义两个数组,数组中可以存放小球标签对象,也可以按顺序存放小球的标签的weight属性,我在这里存放的是小球标签对象,方便操作和提取属性

2.模拟称重过程是需要将小球从原有的位置放到天平的称重盘里面,并且一个小球只能取一次,那么就使用hide()方法让小球在原有位置消失,然后再使用append方法在天平称重盘位置创建新的小球标签,这里要防止两件事发生、

1)使用append()方法会导致小球重复添加,那么在每添加一个新小球到天平的称重盘框里面的时候,每添加一个在执行方法之前,需要remove称重盘中的内容

2)称重盘有两个,因为是使用按钮添加,那么当用户两个按钮都点下的情况下再去点小球如何防止同一个小球在两个称重盘中重复添加?这里需要用到事件的接触绑定,unbind("click")方法,在每次点击左右添加按钮之前,先将所有小球的点击事件全部解除绑定,然后再重新添加绑定事件

3.在称重的同时,12个小球的数量其实很多了,不可以让用户拿个本子用笔来记录吧,所以需要添加一个结果框,显示每一次称重的结果,使用append()方法实现

4.质量不同的小球编号应该是一个随机数,在每一次打开页面的时候,这个质量不同的小球就随机好,并且小球是比其它小球轻还是重也应该是随机的

第二步:画静态页面

1.画12个小球,每个小球都添加自定义属性item和weight(好像JQuery中设置自定义属性的值只能是字符串)

		<div id="center">
			<div class="ball fl" id="b1" item="1" weight="10"><span>1</span></div>
			<div class="ball fl" id="b2" item="2" weight="10"><span>2</span></div>
			<div class="ball fl" id="b3" item="3" weight="10"><span>3</span></div>
			<div class="ball fl" id="b4" item="4" weight="10"><span>4</span></div>
			<div class="ball fl" id="b5" item="5" weight="10"><span>5</span></div>
			<div class="ball 
  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值