Ergebnis 1 bis 4 von 4

Thema: Drag and Drop Spiel

  1. #1
    Neuer Benutzer
    Registriert seit
    22.01.2017
    Beiträge
    3

    Drag and Drop Spiel

    Hallo,
    ich arbeite im Moment an einem Mathe Drag and Drop Spiel. Auf der Linken seite sind 4 div boxen mit ergebnissen und auf der rechten seite sind div boxen mit aufgaben. Man soll die ergebnis div boxen über die aufgaben ziehen und wen das ergebnis stimmt soll sich das rechte div grün färben. Ich habe nun ein problem bei den droppable function 'accept' da ich nicht genau weis wie ich die ergebnisse vergleichen kann. Wäre nett wen mir einer helfen könnte
    Mfg sedna98

    die html:
    HTML-Code:
    <!doctype html>
    <html>
    <head>
      <meta charset="utf-8">
      <title>Ihr Spiel</title>
      <link href="main.css" rel="stylesheet">
       <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.0/jquery.min.js"></script>
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.9/jquery-ui.min.js"></script>
        <script src="draganddrop.js"></script>
        
    </head>
    
    <body>
        
        /* linke seite enthält ergebnisse */
        <div class="container">
            <div class="bg">
              
                <div class="boxl" id="box1l">
                    <div id="summe"></div>
                </div>  
                <div class="boxl" id="box2l">
                    <div id="summe"></div>
                </div>    
                <div class="boxl" id="box3l">
                    <div id="summe"></div>
                </div>    
                <div class="boxl" id="box4l">
                    <div id="summe"></div>
                </div>    
             
                
       /* rechte seite enthält aufgaben */
                <div class="boxr" id="box1r">
                    <div id="sum1"></div> + <div id="sum2"></div>
                    <div id="ergebnis"></div>
                </div>    
                <div class="boxr" id="box2r">
                <div id="sum1"></div> + <div id="sum2"></div>
                    <div id="ergebnis"></div>
                </div>
                <div class="boxr" id="box3r">
                    <div id="sum1"></div> + <div id="sum2"></div>
                    <div id="ergebnis"></div>
                </div>
                <div class="boxr" id="box4r">
                    <div id="sum1"></div> + <div id="sum2"></div>
                    <div id="ergebnis"></div>
                </div>
                
             <div class="containerlevel">
                <h1>Level:</h1><h1 id="level"></h1>
            </div>
                
          /* lebens anzeige */      
                    <div class="containerherzen">
                        <img  src="../pics/herz.jpg" width="100px" height="80px" >
                        <img  src="../pics/herz.jpg" width="100px" height="80px" >
                        <img  src="../pics/herz.jpg" width="100px" height="80px" >
                        <img  src="../pics/herz.jpg" width="100px" height="80px" >
                        <img  src="../pics/herz.jpg" width="100px" height="80px" >
                        
                    </div>
                
                
            </div>
        </div>
    <!-- <input type="button" id="close" value="schließen"> Falls Sie im Spiel einen Button einfügen möchten, der das Spielefenster schließt. -->
    
    </body>
    </html>
    die js:
    Code:
    $(document).ready(function()
    {  
        var gelösteaufgaben = 0;
        /* div boxen werden gefüllt */
         for(var i=0;i<4;i++)
            {
                var erstezahl = Math.floor(Math.random() * 10)+1;
                var zweitezahl =Math.floor(Math.random() * 40)+11;
                var ergebnis = parseInt(erstezahl) + parseInt(zweitezahl);
                var zufall = Math.floor(Math.random()*4);
                if($(' #summe').eq(zufall).val() == '') 
                    {     
                        $(" #summe").eq(zufall).text(ergebnis);
                    }
                
                $(" #sum1").eq(i).text(erstezahl);
                $(" #sum2").eq(i).text(zweitezahl);
                $(" #ergebnis").eq(i).text(ergebnis).hide();
                
            }
        /* linke divs werden draggable gemacht */
        $(".boxl").draggable({ revert: 'invalid'});
        /* rechte divs werden dropabble gemacht */
        $(".boxr").droppable({
           accept: function(d){
               if($(this).find('#summe').text() == $(this.target).find('#ergebnis').text())
                   return true;
            
           }
         
        }) 
    });
    Geändert von sedna98 (25.01.2017 um 18:00 Uhr)

  2. #2
    Moderator
    Registriert seit
    04.05.2012
    Beiträge
    2.622
    Prinzipiell ist dein Ansatz gar nicht schlecht. Mich stört bei der ganzen Sache nur das du IDs wie Klassen verwendest.
    z.B.:
    $(this.target).find('#ergebnis')
    Ist eigentlich overkill da es nur 1x ergebnis geben darf, also wäre $('#ergebnis').text() hier völlig ausreichend.

    Das gleiche gilt für:
    $(" #sum1").eq(i).text(erstezahl);
    $(" #sum2").eq(i).text(zweitezahl);
    $(" #ergebnis").eq(i).text(ergebnis).hide();

    .eq verwendest du ja nur weil es mehere Elemente mit der ID gibt. Das ist aber nicht korrekt und führt zu diversen Problemen in unterscheidlichen Browsern. Verwende doch hier einfach Klassen, dann brauchst du nicht mal groß was ändern.

    Kann sein das das schon dein Problem löst. ich bin mir nicht sicher was this.target in dem context für ein Element ist. am einfachsten wäre es wenn du deinen Code mal bei jsdfiddle oder jsbon hochlädst.
    Pakete werden jetzt mit $_DHL geliefert... nicht mehr mit $_POST

  3. #3
    Neuer Benutzer
    Registriert seit
    14.10.2017
    Beiträge
    2
    Zitat Zitat von s4ty Beitrag anzeigen
    Prinzipiell ist dein Ansatz gar nicht schlecht. Mich st&#246;rt bei der ganzen Sache nur das du IDs wie Klassen verwendest. z.B.: $(this.target).find('#ergebnis') Ist eigentlich overkill da es nur 1x ergebnis geben darf, also w&#228;re $('#ergebnis').text() hier v&#246;llig ausreichend. Das gleiche gilt f&#252;r: $(&quot; #sum1&quot.eq(i).text(erstezahl); $(&quot; #sum2&quot.eq(i).text(zweitezahl); $(&quot; #ergebnis&quot.eq(i).text(ergebnis).hide(); .eq verwendest du ja nur weil es mehere Elemente mit der ID gibt. Das ist aber nicht korrekt und f&#252;hrt zu diversen Problemen in unterscheidlichen Browsern. Verwende doch hier einfach Klassen, dann brauchst du nicht mal gro&#223; was &#228;ndern. Kann sein das das schon dein Problem l&#246;st. ich bin mir nicht sicher was this.target in dem context f&#252;r ein Element ist. am einfachsten w&#228;re es wenn du deinen Code mal bei jsdfiddle oder jsbon hochl&#228;dst.
    Những ưu điểm không ngờ của camera giám sát, thiết bị giám sát hành trình

    Hiện nay, với sự phát triển của khoa học và công nghệ thì công nghệ cho các camera giám sát đã được thay đổi và có nhiều lợi thế hơn. Dưới đây là một số lợi thế của camera giám sát.
    Camera IP không dây tránh nguy cơ kẻ trộm cắt dây, lắp đặt dễ dàng mà không cần phải đục khoan để đi dây
    Công nghệ điện thoại thông minh cho phép bạn xem các video và hình ảnh trực tiếp tại nhà ở bất cứ đâu trên thế giới thay vì lo lắng về việc thay đổi những cuốn băng video. Chế độ xem từ xa giúp bạn thuận tiện hơn nhiều
    Các camera giám sát hoạt động trên Internet thay vì thông qua một DVR, rất gọn nhẹ và không lo lắng rằng ai đó vô tình xóa mất dữ liệu. Trong đó, camera ngụy trang sẽ rất tốt nếu bạn muốn thẩm mỹ trong ngôi nhà.
    Camera không dây di chuyển với bạn nếu bạn thay đổi nhà, bạn di chuyển đến bất cứ nơi nào bạn muốn. Ngoài ra, bạn có thể lắp thêm một chiếc camera hành trình cho xe của bạn.
    Cài đặt và thiết lập nhanh chóng
    Những lợi ích này và nhiều hơn còn được áp dụng cho cả camera ngoài trời và trong nhà. Bạn có thể cảm thấy sự an toàn bất cứ nơi nào với camera an ninh được trang bị với công nghệ hiện đại.

    http://camerahanhtrinhgiare.vn/

  4. #4
    Neuer Benutzer
    Registriert seit
    14.10.2017
    Beiträge
    2
    Zitat Zitat von namnguyen01 Beitrag anzeigen
    Những ưu điểm kh&#244;ng ngờ của camera gi&#225;m s&#225;t, thiết bị gi&#225;m s&#225;t h&#224;nh tr&#236;nh Hiện nay, với sự ph&#225;t triển của khoa học v&#224; c&#244;ng nghệ th&#236; c&#244;ng nghệ cho c&#225;c camera gi&#225;m s&#225;t đ&#227; được thay đổi v&#224; c&#243; nhiều lợi thế hơn. Dưới đ&#226;y l&#224; một số lợi thế của camera gi&#225;m s&#225;t. Camera IP kh&#244;ng d&#226;y tr&#225;nh nguy cơ kẻ trộm cắt d&#226;y, lắp đặt dễ d&#224;ng m&#224; kh&#244;ng cần phải đục khoan để đi d&#226;y C&#244;ng nghệ điện thoại th&#244;ng minh cho ph&#233;p bạn xem c&#225;c video v&#224; h&#236;nh ảnh trực tiếp tại nh&#224; ở bất cứ đ&#226;u tr&#234;n thế giới thay v&#236; lo lắng về việc thay đổi những cuốn băng video. Chế độ xem từ xa gi&#250;p bạn thuận tiện hơn nhiều C&#225;c camera gi&#225;m s&#225;t hoạt động tr&#234;n Internet thay v&#236; th&#244;ng qua một DVR, rất gọn nhẹ v&#224; kh&#244;ng lo lắng rằng ai đ&#243; v&#244; t&#236;nh x&#243;a mất dữ liệu. Trong đ&#243;, camera ngụy trang sẽ rất tốt nếu bạn muốn thẩm mỹ trong ng&#244;i nh&#224;. Camera kh&#244;ng d&#226;y di chuyển với bạn nếu bạn thay đổi nh&#224;, bạn di chuyển đến bất cứ nơi n&#224;o bạn muốn. Ngo&#224;i ra, bạn c&#243; thể lắp th&#234;m một chiếc camera h&#224;nh tr&#236;nh cho xe của bạn. C&#224;i đặt v&#224; thiết lập nhanh ch&#243;ng Những lợi &#237;ch n&#224;y v&#224; nhiều hơn c&#242;n được &#225;p dụng cho cả camera ngo&#224;i trời v&#224; trong nh&#224;. Bạn c&#243; thể cảm thấy sự an to&#224;n bất cứ nơi n&#224;o với camera an ninh được trang bị với c&#244;ng nghệ hiện đại. http://camerahanhtrinhgiare.vn/
    Những ưu điểm không ngờ của camera giám sát, thiết bị giám sát hành trình

    Hiện nay, với sự phát triển của khoa học và công nghệ thì công nghệ cho các camera giám sát đã được thay đổi và có nhiều lợi thế hơn. Dưới đây là một số lợi thế của camera giám sát.
    Camera IP không dây tránh nguy cơ kẻ trộm cắt dây, lắp đặt dễ dàng mà không cần phải đục khoan để đi dây
    Công nghệ điện thoại thông minh cho phép bạn xem các video và hình ảnh trực tiếp tại nhà ở bất cứ đâu trên thế giới thay vì lo lắng về việc thay đổi những cuốn băng video. Chế độ xem từ xa giúp bạn thuận tiện hơn nhiều
    Các camera giám sát hoạt động trên Internet thay vì thông qua một DVR, rất gọn nhẹ và không lo lắng rằng ai đó vô tình xóa mất dữ liệu. Trong đó, camera ngụy trang sẽ rất tốt nếu bạn muốn thẩm mỹ trong ngôi nhà.
    Camera không dây di chuyển với bạn nếu bạn thay đổi nhà, bạn di chuyển đến bất cứ nơi nào bạn muốn. Ngoài ra, bạn có thể lắp thêm một chiếc camera hành trình cho xe của bạn.
    Cài đặt và thiết lập nhanh chóng
    Những lợi ích này và nhiều hơn còn được áp dụng cho cả camera ngoài trời và trong nhà. Bạn có thể cảm thấy sự an toàn bất cứ nơi nào với camera an ninh được trang bị với công nghệ hiện đại.

    http://camerahanhtrinhgiare.vn/

Stichworte

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •