吟游诗人 淳、简、拉基茨德 2019-05-12 17:19 采纳率: 0%
浏览 848

如何做HTML5拖拽题目?

  1. 利用HTML5拖拽的功能,实现识别水果和蔬菜的幼儿辅助教育程序。

  2. 图形界面UI要求:

    a.屏幕左上角显示得分,随着答题的正确+10分,满分100分。

    b.屏幕中间有左右两个大区域,一个数蔬菜区域,一个是水果区域。

    c.两个区域可以接受拖拽进来的图片

    d.屏幕下方,随机出现蔬菜和水果的图片供10张,用户可以拖拽这些图片,放入上方的两个区域,来答题。

    e.自定义提示框。游戏结束的时候出现。里面显示总得分,还有重新开始按钮。

  3. 逻辑要求:
    a. 起始时,游戏得分0分。当用户进行答题后,相应的进行加分,答错不扣分。

    b. 当所有的10张图片都拖拽分类完毕后,显示最终结果。弹出提示框。

  4. 提交要求:

    a. 提交所有的网页文件、图片文件等在内的程序问价。

    参考原型
    

<!DOCTYPE html>





水果?蔬菜?
<br> #veg{<br> width: 400px;<br> height: 400px;<br> background-color:coral;<br> display: inline-block;<br> }<br> #fru{<br> width: 400px;<br> height: 400px;<br> background-color:deepskyblue;<br> display: inline-block;<br> }<br> .cube{<br> width: 50px;<br> height: 50px;<br> border:1px solid green;<br> display: inline-block;<br> margin: 20px 20px 0 0;<br> line-height: 50px;<br> text-align: center;<br> }<br> #aZone,#bZone{<br> margin: 0 auto;<br> width: 1000px;<br> }<br>





<div id="bZone">

</div>
<br>
<script>
    var VEG = ["西红柿","黄瓜","大白菜","洋葱","白萝卜","茄子","山药","南北瓜","土豆","大蒜","冬瓜","姜","大葱","菌类","蒜薹","豆角","胡萝卜","生菜","芹菜","莴笋","菜花","椒类","红薯","西葫芦","菠菜","特菜","甘蓝","藕"];
    var FRU = ["苹果","梨","西瓜","香蕉","木瓜","芒果","葡萄","猕猴桃","哈密瓜","甜瓜类","桃李杏","荔枝","樱桃"];

    var ALL = VEG.concat(FRU);

    window.onload = function(){
        veg.ondragover = allowDrop;
        veg.ondrop = drop;
        fru.ondragover = allowDrop;
        fru.ondrop = drop;

        for(var i=0; i<10; i++){
            var newDiv = document.createElement("div");
            newDiv.className = "cube";
            newDiv.setAttribute("draggable", true);
            newDiv.ondragstart = drag;
            newDiv.id = "d" + i;
            bZone.appendChild(newDiv);
            var word = ALL[Math.floor(Math.random()*ALL.length)];
            newDiv.innerHTML = word;
        }
    }

    function drag(e){
        e.dataTransfer.setData("sid", e.target.id);
    }

    function drop(e){
        var that = e.dataTransfer.getData("sid");
        var thatDrop = document.getElementById(that);
        // e是事件,e.target是发生在什么里面,这里的里面就是要接受落下的区域
        e.target.appendChild(thatDrop);
        e.preventDefault();  // 默认不允许坠入,这里允许坠入
    }

    function allowDrop(e){
        e.preventDefault(); // prevent方式 default默认情况 规避默认的不允许移动的要求,变成可以移动
    }


</script>


  • 写回答

1条回答 默认 最新

  • threenewbee 2019-05-12 17:27
    关注
    评论

报告相同问题?

悬赏问题

  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!
  • ¥15 drone 推送镜像时候 purge: true 推送完毕后没有删除对应的镜像,手动拷贝到服务器执行结果正确在样才能让指令自动执行成功删除对应镜像,如何解决?