JS.6 隠しコマンドで遊ぶ

2019-06-09(Sun) | tags: tips

JavaScriptを使うと隠しコマンドで遊べると聞いたので、試しに遊んで見ました。

また、fontBombという、テキスト(フォント)を時限爆弾で爆発させるスクリプトを使って遊んでも見たので、隠しコマンドがわかった人はそれでも遊んでみてください!!

ちなみに、隠しコマンドは僕の名前(Lastname,Firstname)です。(間に何もいりません。)

作ったもの

隠しコマンドを解けば、ここにある歌の歌詞が出てきます。その曲を選んだのは僕が好きだからですが、公式MVに出てくる女性はめちゃめちゃ鍛えた体してるのにボクシングのパンチがありえん棒立ちでちょっと残念なので、ぜひ見てみてください!(エドシーランは普通に上手です。)

ちなみに、僕は普通のものよりピッチやテンポを上げたアレンジ版の方が好きです。

コード

html

<div id="shape-of-you" style="visibility: hidden;">
  <!-- ここに隠しコマンド後に表示させる要素をかく -->
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

JavaScript

$(function() {
  var inputKey = [];
  var Command = [73,87,65,83,65,75,73,83,72,85,84,79];

$(window).keyup(function(e) {
  inputKey.push(e.keyCode);
  // 入力配列にコマンドがあるかを調べる。存在しなければ-1を返す。
  if (inputKey.toString().indexOf(Command) >= 0) {
      //隠しコマンド成功時
      alert("コマンド発動!!");
      // cssにbackground-imageを記述したクラスを追加(これで背景を変える。)
      $("#shape-of-you").addClass('shape-of-you');
      document.querySelector('#shape-of-you').style.visibility = "visible";
      // fontBombのスクリプトをコピー
      var s = document.createElement('script');
      s.setAttribute('src', 'http://fontbomb.ilex.ca/js/main.js');
      document.body.appendChild(s);

      //キー入力を初期化
      inputKey = [];
  }
  if (inputKey.length >= 1000){
    alert("かなり頑張ってますね笑\n処理速度を上げるために初期化しますね!");
    inputKey = [];
  }
});

css

.shape-of-you {
  background-color: rgb(170, 220, 230);
  background-size:contain;
  width:100%;
}
other contents
social