イベントが発生したときにHTMLコンテンツをWebページに表示する

Gaurav Thantry

「Hey!」のようなHTMLコンテンツをWebページ全体に表示するにはどうすればよいですか。あなたは勝ちましたが、このコンテンツの背景は、実際のwebPageの背後を示す半透明である必要がありますか?私はメモリゲームと呼ばれるウェブページを設計しました。これは、ユーザーがデッキの内容を反転することでその内容を一致させることができ、ユーザーがすべての一致を完了したときに「おめでとう」メッセージをその上に印刷したいと思いました。以下は私のコードです:

$(document).ready(function() {
    var click = 1,totalClicks = 0, className1 = '',className2 = '',firstClick='',secondClick='',match=0;
    $(".moves").html(totalClicks);
    var deck = document.querySelector(".deck");
    for (var i = deck.children.length; i >= 0; i--) {
        deck.appendChild(deck.children[Math.random() * i | 0]);
    }
    $(".card").click(function() {
        if (!$(this).hasClass("open")) {
            totalClicks++;
            $(".moves").html(totalClicks);
            if (click === 1) {
                $(this).addClass("open show");
                $(this).attr('id', 'card1');
                className1 = $(this).children().attr('class');
                firstClick=$(this);
            } else if (click === 2) {
                $(this).addClass("open show");
                className2 = $(this).children().attr('class');
                if(className1===className2)
                {
                  match++;
                  $(this).unbind("click");
                  firstClick.unbind("click");
                }
                unflip();
            }
            if (click === 1) {
                click++;
            } else {
                click = 1;
            }
        }
        else{
          $(this).removeClass("open");
          $(this).removeClass("show");
        }

    });

    $(".restart").click(function() {
        totalClicks = 0;
        $(".moves").html(totalClicks);
        $("ul.deck>li").removeClass("open");
        $("ul.deck>li").removeClass("show");
        var deck = document.querySelector(".deck");
        for (var i = deck.children.length; i >= 0; i--) {
            deck.appendChild(deck.children[Math.random() * i | 0]);
        }
    });

    if(match===8)
    {
      /* This is where the 'Congragulations message must be show over the web page' */
    }
    function unflip() {
        if (className1 !== className2) {

            setTimeout(removeClasses, 1000);

            function removeClasses() {
                $("ul.deck>li").removeClass("open");
                $("ul.deck>li").removeClass("show");
            }
        }
    }
});
html {
    box-sizing: border-box;
}

*,
*::before,
*::after {
    box-sizing: inherit;
}

html,
body {
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
}

body {
    background: #ffffff url('../img/geometry2.png'); /* Background pattern from Subtle Patterns */
    font-family: 'Coda', cursive;
}

.container {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}

h1 {
    font-family: 'Open Sans', sans-serif;
    font-weight: 300;
}

/*
 * Styles for the deck of cards
 */

.deck {
    width: 660px;
    min-height: 680px;
    background: linear-gradient(160deg, #02ccba 0%, #aa7ecd 100%);
    padding: 32px;
    border-radius: 10px;
    box-shadow: 12px 15px 20px 0 rgba(46, 61, 73, 0.5);
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    margin: 0 0 3em;
}

.deck .card {
    height: 125px;
    width: 125px;
    background: #2e3d49;
    font-size: 0;
    color: #ffffff;
    border-radius: 8px;
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
    box-shadow: 5px 2px 20px 0 rgba(46, 61, 73, 0.5);
}

.deck .card.open {
    transform: rotateY(0);
    background: #02b3e4;
    cursor: default;
}

.deck .card.show {
    font-size: 33px;
}

.deck .card.match {
    cursor: default;
    background: #02ccba;
    font-size: 33px;
}

/*
 * Styles for the Score Panel
 */

.score-panel {
    text-align: left;
    width: 345px;
    margin-bottom: 10px;
}

.score-panel .stars {
    margin: 0;
    padding: 0;
    display: inline-block;
    margin: 0 5px 0 0;
}

.score-panel .stars li {
    list-style: none;
    display: inline-block;
}

.score-panel .restart {
    float: right;
    cursor: pointer;
}

.fa.fa-star,.fa.fa-repeat{
  font-size: 25px;
}
<!doctype html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title>Memory Game</title>
    <meta name="description" content="">
    <link rel="stylesheet prefetch" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.1/css/font-awesome.min.css">
    <link rel="stylesheet prefetch" href="https://fonts.googleapis.com/css?family=Coda">
    <script type="text/javascript" src="http://code.jquery.com/jquery-1.7.1.min.js"></script>
    <script src="//code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
    <link rel="stylesheet" href="css/app.css">
</head>
<body>

    <div class="container">
        <header>
            <h1>Memory Game</h1>
        </header>

        <section class="score-panel">
        	<ul class="stars">
        		<li><i class="fa fa-star"></i></li>
        		<li><i class="fa fa-star"></i></li>
        		<li><i class="fa fa-star"></i></li>
        	</ul>

        	<span class="moves"></span> Moves

            <div class="restart">
        		<i class="fa fa-repeat"></i>
        	</div>
        </section>

        <ul class="deck">
            <li class="card">
                <i class="fa fa-diamond"></i>
            </li>
            <li class="card">
                <i class="fa fa-paper-plane-o"></i>
            </li>
            <li class="card">
                <i class="fa fa-anchor"></i>
            </li>
            <li class="card">
                <i class="fa fa-bolt"></i>
            </li>
            <li class="card">
                <i class="fa fa-cube"></i>
            </li>
            <li class="card">
                <i class="fa fa-anchor"></i>
            </li>
            <li class="card">
                <i class="fa fa-leaf"></i>
            </li>
            <li class="card">
                <i class="fa fa-bicycle"></i>
            </li>
            <li class="card">
                <i class="fa fa-diamond"></i>
            </li>
            <li class="card">
                <i class="fa fa-bomb"></i>
            </li>
            <li class="card">
                <i class="fa fa-leaf"></i>
            </li>
            <li class="card">
                <i class="fa fa-bomb"></i>
            </li>
            <li class="card">
                <i class="fa fa-bolt"></i>
            </li>
            <li class="card">
                <i class="fa fa-bicycle"></i>
            </li>
            <li class="card">
                <i class="fa fa-paper-plane-o"></i>
            </li>
            <li class="card">
                <i class="fa fa-cube"></i>
            </li>
        </ul>
    </div>

    <script src="js/app.js"></script>
</body>
</html>

Gaurav Thantry

解決策を見つけました。別のは、sectionそのHTMLに追加する必要がありますdisplayに設定する必要がありますnone表示はjQueryを使用して切り替えることができます。以下が解決策です。クラスオーバーレイを含む新しいセクションが追加されました。このセクションの表示はnone、Javaスクリプトで切り替えられます。

$(document).ready(function() {
    var click = 1,totalClicks = 0, className1 = '',className2 = '',firstClick='',secondClick='',match=0;
    shuffle();
    $(".moves").html(totalClicks);
    $(".card").click(function() {
        if (!$(this).hasClass("open")) {
            totalClicks++;
            $(".moves").html(totalClicks);
            if (click === 1) {
                $(this).addClass("open show");
              /*  $(this).attr('id', 'card1'); */
                className1 = $(this).children().attr('class');
                firstClick=$(this);
            } else if (click === 2) {
                $(this).addClass("open show");
                className2 = $(this).children().attr('class');
                secondClick=$(this);
                if(className1===className2)
                {
                  match++;
                  console.log(match);
                  secondClick.unbind("click");
                  firstClick.unbind("click");
                  firstClick.addClass("match");
                  secondClick.addClass("match");
                }
                if(match===1)
                {
                  console.log('match is now 8');

                /*document.getElementById("overlay").style.display="block";*/
                $("#overlay").css("display","block");
                $(".text").hide().html('Yaay!! You\'ve Won!!!!').fadeIn('slow');

                }
                unflip();
            }
            if (click === 1) {
                click++;
            } else {
                click = 1;
            }
        }
        else{
          click=1;
          $(this).removeClass("open");
          $(this).removeClass("show");
        }


    });

    $(".restart").click(function() {
      $(this).children().addClass('refresh').delay(200).queue(function(next){
        $(this).removeClass('refresh');
        next();
      });
        totalClicks = 0;
        $(".moves").html(totalClicks);
        $("ul.deck>li").removeClass("open");
        $("ul.deck>li").removeClass("show");
        $("ul.deck>li").removeClass("match");
        var deck = document.querySelector(".deck");
        for (var i = deck.children.length; i >= 0; i--) {
            deck.appendChild(deck.children[Math.random() * i | 0]);
        }
    });

    $(".restart-overlay").click(function(){
      $("#overlay").css("display","none");
      totalClicks = 0;
      $(".moves").html(totalClicks);
    $("ul.deck>li").removeClass("open show match");
      shuffle();
    });
    function unflip() {
        if (className1 !== className2) {
            setTimeout(removeClasses, 1000);
        }
    }
    function removeClasses() {
        firstClick.removeClass("open");
        firstClick.removeClass("show");
        secondClick.removeClass("open");
        secondClick.removeClass("show");
    }

    function shuffle(){
    var deck = document.querySelector(".deck");
    for (var i = deck.children.length; i >= 0; i--) {
        deck.appendChild(deck.children[Math.random() * i | 0]);
    }
  }
});
html {
    box-sizing: border-box;
}

*,
*::before,
*::after {
    box-sizing: inherit;
}

html,
body {
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
}

body {
    background: #ffffff url('../img/geometry2.png'); /* Background pattern from Subtle Patterns */
    font-family: 'Coda', cursive;
}

.container {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}

h1 {
    font-family: 'Open Sans', sans-serif;
    font-weight: 300;
}

/*
 * Styles for the deck of cards
 */

.deck {
    width: 660px;
    min-height: 680px;
    background: linear-gradient(160deg, #02ccba 0%, #aa7ecd 100%);
    padding: 32px;
    border-radius: 10px;
    box-shadow: 12px 15px 20px 0 rgba(46, 61, 73, 0.5);
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    margin: 0 0 3em;
}

.deck .card {
    height: 125px;
    width: 125px;
    background: #2e3d49;
    font-size: 0;
    color: #ffffff;
    border-radius: 8px;
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
    box-shadow: 5px 2px 20px 0 rgba(46, 61, 73, 0.5);
}

.deck .card.open {
    transform: rotateY(0);
    background: #02b3e4;
    cursor: default;
}

.deck .card.show {
    font-size: 33px;
}

.deck .card.match {
    cursor: default;
    background: #02ccba;
    font-size: 33px;
}

/*
 * Styles for the Score Panel
 */

.score-panel {
    text-align: left;
    width: 345px;
    margin-bottom: 10px;
}

.score-panel .stars {
    margin: 0;
    padding: 0;
    display: inline-block;
    margin: 0 5px 0 0;
}

.score-panel .stars li {
    list-style: none;
    display: inline-block;
}

.score-panel .restart {
    float: right;
    cursor: pointer;
}

.fa.fa-star-o{
  font-size: 28px;
}

.fa.fa-repeat{
  font-size: 25px;
}

.refresh{
  text-shadow:3px 3px 3px #272634;
}

#overlay {
    position: fixed; /* Sit on top of the page content */
    display: none; /* Hidden by default */
    width: 100%; /* Full width (cover the whole page) */
    height: 100%; /* Full height (cover the whole page) */
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0,0,0,0.5); /* Black background with opacity */
    z-index: 2; /* Specify a stack order in case you're using a different order for other elements */
    cursor: pointer; /* Add a pointer on hover */
}

.text{
  font-size: 60px;
  color: yellow;
  font-family:fantasy;
  font-style: italic;
  font-weight: bold;
  position: absolute;
      top: 50%;
      left: 35%;
      height: 30%;
      width: 50%;

}

#overlay{
  height: 100%;
  width:100%;
}

.restart-overlay{
  position: absolute;
  top: 65%;
  left: 50%;
  height: 50%;
  width: 50%;
}

.fa.fa-repeat.playagain{
  font-color: grey;
  font-size: 35px;
  text-shadow:3px 3px 3px #272634;
}
<!doctype html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title>Memory Game</title>
    <meta name="description" content="">
    <link rel="stylesheet prefetch" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.1/css/font-awesome.min.css">
    <link rel="stylesheet prefetch" href="https://fonts.googleapis.com/css?family=Coda">
    <script type="text/javascript" src="http://code.jquery.com/jquery-1.7.1.min.js"></script>
    <script src="//code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
    <link rel="stylesheet" href="css/app.css">
</head>
<body>
   <section id="overlay">
     <section class="text"></section>
     <section class="restart-overlay">
       <i class="fa fa-repeat playagain"></i>
     </section>
   </section>
    <section class="container">
        <header>
            <h1>Memory Game</h1>
        </header>

        <section class="score-panel">
        	<ul class="stars">
        		<li><i class="fa fa-star-o"></i></li>
        		<li><i class="fa fa-star-o"></i></li>
        		<li><i class="fa fa-star-o"></i></li>
        	</ul>

        	<span class="moves"></span> Moves

            <section class="restart">
        		<i class="fa fa-repeat"></i>
        	</section>
        </section>

        <ul class="deck">
            <li class="card">
                <i class="fa fa-diamond"></i>
            </li>
            <li class="card">
                <i class="fa fa-paper-plane-o"></i>
            </li>
            <li class="card">
                <i class="fa fa-anchor"></i>
            </li>
            <li class="card">
                <i class="fa fa-bolt"></i>
            </li>
            <li class="card">
                <i class="fa fa-cube"></i>
            </li>
            <li class="card">
                <i class="fa fa-anchor"></i>
            </li>
            <li class="card">
                <i class="fa fa-leaf"></i>
            </li>
            <li class="card">
                <i class="fa fa-bicycle"></i>
            </li>
            <li class="card">
                <i class="fa fa-diamond"></i>
            </li>
            <li class="card">
                <i class="fa fa-bomb"></i>
            </li>
            <li class="card">
                <i class="fa fa-leaf"></i>
            </li>
            <li class="card">
                <i class="fa fa-bomb"></i>
            </li>
            <li class="card">
                <i class="fa fa-bolt"></i>
            </li>
            <li class="card">
                <i class="fa fa-bicycle"></i>
            </li>
            <li class="card">
                <i class="fa fa-paper-plane-o"></i>
            </li>
            <li class="card">
                <i class="fa fa-cube"></i>
            </li>
        </ul>
    </section>

    <script src="js/app.js"></script>
</body>
</html>

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

クリックイベントが発生したときにツールチップを非表示にする

分類Dev

C#WPF-別の制御イベントが発生したときに制御コンテンツを変更する

分類Dev

イベントが発生したときにPromiseをトリガーする

分類Dev

たくさんのコンテンツが上に表示されたときに、ページを要素に垂直に固定したままにします(したがってスクロールが発生します)

分類Dev

セレンを使用してWebページをスクレイプするときにHTMLコンテンツが欠落している

分類Dev

Webユーザーコントロールのサーバー側イベントが発生したときに現在のページの更新を停止する方法

分類Dev

イベントが発生したときにリストを循環し、それを画面に表示する

分類Dev

.NET Webサイトがある場合、検索エンジンはWebページのコンテンツをaspxページまたはhtmlページとして表示しますか?

分類Dev

2つのDOMイベントが発生したときにのみJavaScriptコードを実行する方法

分類Dev

ページが完全に読み込まれたときにHTMLコンテンツを変更する方法

分類Dev

イベントが発生したときにポップアップウィンドウを表示するjavafx

分類Dev

コンテナの外でクリックイベントが発生したときにコンテナを閉じようとする

分類Dev

スプリングセキュリティを実装した後、jsfページに画像を表示するときにエラーが発生しました

分類Dev

新しい画像が表示されたときに発生するWindowsMedia Player COMコンポーネントのイベントはありますか?

分類Dev

PHPにログインするためのプリペアドステートメントを作成するときにエラーが発生しました

分類Dev

コンテンツが増加したときにjspdfを自動ページングする

分類Dev

hrefプロパティでイベントが発生したときにリンク要素を取得する

分類Dev

コンポーネントが画面に描画されたときに発生するイベント

分類Dev

Firebaseイベントが発生したときにReactNative(Expo)UIを更新する

分類Dev

AngularのstateChangeStartイベントは、ページを更新するときに発生しません

分類Dev

ViewPagerが4ページに到達したときにボタンを表示したいのですが、nullポインタ例外が発生します

分類Dev

AlertDialog内にインテントを作成するときにエラーが発生しました

分類Dev

最初に初期化したときに、Webページのコンテンツ全体をWebビューに収めることができませんか?

分類Dev

動的に作成されたコンポーネントに対して出力イベントを発生させることができます

分類Dev

MicrosoftアプリケーションインサイトにWebテストを追加するときにエラーが発生しました

分類Dev

通知がクリックされたときにローカル通知を呼び出したコンテンツページを表示する

分類Dev

RowValidatedイベント内のDataGridViewに行を追加するときにエラーが発生しました

分類Dev

イベントが発生したときにセル内のテキストを通知する

分類Dev

ユーザーがGoogleAnalyticsで最初のイベントタイプを発生させたときにどのページを表示していたかを確認する方法

Related 関連記事

  1. 1

    クリックイベントが発生したときにツールチップを非表示にする

  2. 2

    C#WPF-別の制御イベントが発生したときに制御コンテンツを変更する

  3. 3

    イベントが発生したときにPromiseをトリガーする

  4. 4

    たくさんのコンテンツが上に表示されたときに、ページを要素に垂直に固定したままにします(したがってスクロールが発生します)

  5. 5

    セレンを使用してWebページをスクレイプするときにHTMLコンテンツが欠落している

  6. 6

    Webユーザーコントロールのサーバー側イベントが発生したときに現在のページの更新を停止する方法

  7. 7

    イベントが発生したときにリストを循環し、それを画面に表示する

  8. 8

    .NET Webサイトがある場合、検索エンジンはWebページのコンテンツをaspxページまたはhtmlページとして表示しますか?

  9. 9

    2つのDOMイベントが発生したときにのみJavaScriptコードを実行する方法

  10. 10

    ページが完全に読み込まれたときにHTMLコンテンツを変更する方法

  11. 11

    イベントが発生したときにポップアップウィンドウを表示するjavafx

  12. 12

    コンテナの外でクリックイベントが発生したときにコンテナを閉じようとする

  13. 13

    スプリングセキュリティを実装した後、jsfページに画像を表示するときにエラーが発生しました

  14. 14

    新しい画像が表示されたときに発生するWindowsMedia Player COMコンポーネントのイベントはありますか?

  15. 15

    PHPにログインするためのプリペアドステートメントを作成するときにエラーが発生しました

  16. 16

    コンテンツが増加したときにjspdfを自動ページングする

  17. 17

    hrefプロパティでイベントが発生したときにリンク要素を取得する

  18. 18

    コンポーネントが画面に描画されたときに発生するイベント

  19. 19

    Firebaseイベントが発生したときにReactNative(Expo)UIを更新する

  20. 20

    AngularのstateChangeStartイベントは、ページを更新するときに発生しません

  21. 21

    ViewPagerが4ページに到達したときにボタンを表示したいのですが、nullポインタ例外が発生します

  22. 22

    AlertDialog内にインテントを作成するときにエラーが発生しました

  23. 23

    最初に初期化したときに、Webページのコンテンツ全体をWebビューに収めることができませんか?

  24. 24

    動的に作成されたコンポーネントに対して出力イベントを発生させることができます

  25. 25

    MicrosoftアプリケーションインサイトにWebテストを追加するときにエラーが発生しました

  26. 26

    通知がクリックされたときにローカル通知を呼び出したコンテンツページを表示する

  27. 27

    RowValidatedイベント内のDataGridViewに行を追加するときにエラーが発生しました

  28. 28

    イベントが発生したときにセル内のテキストを通知する

  29. 29

    ユーザーがGoogleAnalyticsで最初のイベントタイプを発生させたときにどのページを表示していたかを確認する方法

ホットタグ

アーカイブ