HTML5キャンバス - ボールの衝突

HTML5は、World Wide Webのコア言語であり、標準汎用マークアップ言語を応用したハイパーテキストマークアップ言語(HTML)の5回目の大幅な改訂版です。 1999年以降、HTML 4.01は大きく変化しました。今日では、HTML 4.01の一部の要素は廃止され、これらの要素はHTML5で削除または再定義されています。現代のインターネットアプリケーションをより良く扱うために、HTML5では多くの新しい要素と機能が追加されました。例えば、図形の描画、マルチメディアコンテンツ、より良いページ構造、より良いフォーム処理、そしてドラッグ&ドロップ要素、ジオロケーション、ウェブアプリケーションキャッシュ、ストレージ、ウェブワーカーなどのいくつかのAPIが含まれます。 タグ 説明 タグは、グラフやその他の画像などのグラフィックを定義します。このタグはJavaScriptの描画APIに基づいています。 実行結果の表示: お使いのブラウザはHTML5をサポートしていません コード部分: お使いのブラウザはHTML5をサポートしていません // キャンバスオブジェクトを取得 var my_canvas = document.getElementById(“my-canvas”); // 描画コンテキスト(ブラシ)を取得 var my_huabi = my_canvas.getContext(“2d”); var x = 50; var y = 50; var r = 20; function deawBall(x,y){ // ブラシの色を設定 my_huabi.fillStyle = “green”; // 新しいパスを開始 my_huabi.beginPath(); // ボールを描画 my_huabi.arc(x, y, r, 0, 2 * Math.PI); // パスを閉じる my_huabi.fill(); } var fx_x = true;//fx_xがtrueの場合、x軸方向に移動 var fx_y = true;//fx_yがtrueの場合、y軸方向に移動 var speen = 1; // タイマー window.setInterval(“moveBall()”, 10); function moveBall(){ // 現在のボールの移動方向を判断 if(fx_x == true){ x += speen; if(x >= 500-r){ // 下端に達したら、上向きに跳ね返る fx_x = false; } }else{ x -= speen; if(x <= 0+r){ // 上端に達したら、下向きに跳ね返る fx_x = true; } } if(fx_y == true){ y += speen; if(y >= 400-r){ // 左端に達したら、右向きに跳ね返る fx_y = false; } }else{ y -= speen; if(y <= 0+r){ // 右端に達したら、左向きに跳ね返る fx_y = true; } } // キャンバスをクリアして再描画 my_huabi.clearRect(0, 0, 500, 400); deawBall(x, y); }

2017年7月18日 · 1 分 · MoeJue

全サイトHTTPS暗号化の旅を正式に開始

しばらくのクローズドベータテストを経て、ブログは正式に全サイトHTTPS化されました。 開設からもうすぐ1年になりますが、ずっとHTTPS化したいと思っていました。しかし、以前のホストはSSL証明書をサポートしていなかったため、どうすることもできませんでした。 最近、ホストの契約ももうすぐ切れるので、サポートのあるサーバーに乗り換えました。 以前から、ブログが時々アクセスできなくなるという声を聞いていたので、今回より良いサーバーにアップグレードして、速度や安定性がどうなったか気になります。 そして、emlogのバージョンもアップグレードしました。6.0.0のベータ版ですが、以前の5.Xバージョンのバックエンド管理画面よりもずっと見やすくなりました。UIライブラリには引き続きBootstrapを採用しています。 (注:下の画像はemlog 6.0.0ベータ版のバックエンド管理画面です。サードパーティ製テンプレートの設定画面はなくなっており、下の画像の右上にあるテンプレート管理は私が独自に追加したものです。) 2. マイクロブログがなくなりました emlogがマイクロブログを導入した当初から、それは余計なお世話だと感じていました。非常に粗雑に作られていましたが、皆が慣れた頃に削除されたのは、少し残念です。。。 これはサードパーティ製のプラグインで実装することもできますが、必要とする人が自分で設定すればいいでしょう。。。私はあまりマイクロブログを投稿しません(怠惰なので)、なので削除しました。 もちろん、全サイトHTTPS化を実現するのは非常に面倒です。なぜemlogをアップグレードしたのか?理由はここにあります。6.0.0以降のバージョンのみがHTTPSに完全対応しています。以前のバージョンを使用していたら、修正だらけになってしまうでしょう。。。 emlog以外にも、現在使用している大前端テンプレートもHTTPSをサポートしていません。 実際、大前端がHTTPSをサポートしていない主な理由は、百度の共有機能です。記事ページで百度共有を使用すると、HTTPとHTTPSが混在し、かわいい緑色の鍵マークが消えてしまいます。 「百度共有は現在までに2〜3年更新されていないと思われます。公式ウェブサイトのニュース更新は2012年のままです。これほど長期間更新されていないため、現在多くの百度系製品がHTTPS化されているにもかかわらず、百度共有は依然としてHTTPSをサポートしておらず、開発者にとっては非常に面倒です。ウェブサイトが全サイトHTTPS化されている場合、百度共有を使用するとロード問題が発生し、百度共有のコアJavaScriptがブロックされます。」 ネットで探し回ったところ、すでにこの問題を解決した人がいることがわかりました。なので、私たちはそのまま「伸手党」(他人の成果をそのまま利用する人)になれば良いのです。 Githubアドレス:https://github.com/hrwhisper/baiduShare デフォルトテンプレートのモバイル版ページを削除しました(とにかく醜いので)。現在のテンプレートはレスポンシブなので、必要ありません。

2017年7月14日 · 1 分 · MoeJue

簡単なCSS3アバター回転と3D回転効果

ウェブサイトのコメント欄で、コメント投稿者のアバターにマウスカーソルを合わせると360°回転するのをよく見かけます。 まず効果を見てみましょう。 .tximg{ height:300px; border-radius:50%; border:2px solid green; /*変化規則*/ transition:all 2s; } .tximg:hover{ /* 変化動作 定義2d回転、パラメータは角度を記入 */ transform:rotate(360deg); } CSS部分 img{ height:300px; border-radius:50%; border:2px solid green; /*変化規則*/ transition:all 2s; } img:hover{ /* 変化動作 2D回転を定義し、パラメータに角度を記入 */ transform:rotate(360deg); } HTML部分(非常にシンプルで、画像が1枚だけです) <img src="http://www.52ecy.cn/log0.png"> 3D回転効果(フロントエンドの表示スタイルがやはり競合しているようです -。-) .div{ width:300px; height:300px; border:1px solid red; /*3D効果を見たい場合は、動く要素の親要素にperspective属性を追加する必要があります*/ perspective:300px;/*3D要素からビューまでの距離、通常は画像の高さと同じにすると最も効果的です*/ } .img{ width:300px; height:300px; border:1px solid red; /*変化規則*/ /*回転要素の原点位置を設定*/ transform-origin:bottom; transition:all 2s; } .img:hover{ /*変化動作*/ transform:rotateX(60deg); } CSSコード div{ width:300px; height:300px; border:1px solid red; /*3D効果を見たい場合は、動く要素の親要素にperspective属性を追加する必要があります*/ perspective:300px;/*3D要素からビューまでの距離、通常は画像の高さと同じにすると最も効果的です*/ } img{ width:300px; height:300px; border:1px solid red; /*変化規則*/ /*回転要素の原点位置を設定*/ transform-origin:bottom; transition:all 2s; } img:hover{ /*変化動作*/ transform:rotateX(60deg); } HTMLコードの部分はアバター回転の部分と全く同じで、画像を1枚置くだけなので、ここでは省略します。 効果画像を現在のページに直接挿入すると、現在のページのCSSスタイルと競合し、ページ全体が崩れてしまうため、効果画像のスタイルセレクタを変更しました。 注意:IEモードでは動作しない可能性があります。

2017年7月10日 · 1 分 · MoeJue

CSS3でiPhoneを描く

まずは完成イメージをご覧ください、お先にどうぞ。(これは決して画像ではありません。うん~、なんか変な言い方ですね~) iPhoneの何世代目か聞かないでください、私も知らないし、使ったこともないので、お察しください。 CSSスタイル部分 #phone{ width:250px; height:500px; background-color:#2E2E2E; border:10px solid #3B3B3B; margin:100px auto; border-radius:30px;/*设置div元素的圆角边框*/ } #camera{ width:8px; height:8px; background-color:#1A1A1A; border-radius:50%; border:2px solid #505050; margin:10px auto;/*距离上边距10px 左右居中*/ } #receiver{ width:80px; height:8px; border:2px solid #505050; margin:10px auto; border-radius:10px; background-color:#1A1A1A; } #screen{ width:225px; height:385px; background-color:#0A0A0A; border:3px solid #1C1C1C; margin:10px auto; } #btn{ width:40px; height:40px; background:#1A1A1A; border-radius:50%; /*当宽高相同时,则为圆*/ margin:10px auto; } /*:before 选择器在被选元素的内容前面插入内容。*/ #btn:before{ width:22px; height:22px; border:2px solid white; border-radius:30%; content:""; /*即使插入的内容为空也需要写,否则不显示*/ display:inline-block; margin-top:7px; margin-left:7px; } HTML部分 後で少し機能を追加しました ホームボタンをクリックすると携帯の画面が点灯し、5秒後に再び画面が消えます ...

2017年7月3日 · 1 分 · MoeJue

お遊び - 友情リンク セルフ申請

について 相互リンク自動申請は、PHP言語で開発された相互リンク自動承認追加システムです。 Bootstrap UIライブラリのグリッドシステムでレイアウトしています。結局のところ、私はプロのフロントエンド開発者ではないので、これくらいできれば十分でしょう。 機能紹介 このシステムは、理論上すべてのウェブサイトをサポートしています。HTTPS対応のウェブサイトもサポートしています。相互リンクはウェブサイトのトップページに設定する必要があります。URLリダイレクトや保護がされているウェブサイトは検出できません。トップレベルドメインの申請が承認された後、サブドメインは引き続き申請できません。背景画像は私の画像ライブラリから1000枚の中からランダムに表示されます。 経緯 私の相互リンクの中に、あるブロガーがこのようにしているのを見かけました。相互リンクの自動承認追加は、一瞬でとても高度なものに感じられ、自分で承認する手間も省け、タイムリーに追加できる。それで、自分でも適当に作ってみたのです。 ここでちょっと格好つけているだけです。ソースコードが必要な方はご連絡ください。 もし間違っている点があれば、かかってこいよ! 効果は以下の図の通りです。 友情链接申请地址 友情链接申请须知

2017年6月1日 · 1 分 · MoeJue

各種言語のOEP大全

普段OEPを照合するのは確かに面倒なので、まとめてみました。この記事で直接OEPを確認するか、 画像を右クリックしてローカルに保存してください。 クリックで拡大表示できます。 お役に立てましたら、ぜひコメントを残していってくださいね〜 VC6と易语言 Delphi7 VB5 VB6 BC++ **VS2008Debug ** **VS2008Release ** **VS2012-VS2015Debug ** **VS2012-VS2015Release **

2017年5月19日 · 1 分 · MoeJue

Emlogの最新コメント一覧でブログ主のコメント返信を非表示にする方法

ブロガーは訪問者と頻繁に交流する必要がありますが、ブロガーの返信もコメントとして最新コメント欄に表示されます。これにより、ブロガーが一度に複数のコメントに返信すると、最新コメント欄が自分のコメントで埋め尽くされてしまい、あまり見栄えが良くありません。 私が使用しているemlog5.3.1バージョンを例に説明します: include/libディレクトリにあるcache.phpファイル(これはキャッシュ関数ファイルです)を開き、その中から以下のコードを見つけます: 私の場合は179行目にあります。以下の通りです。 $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "comment WHERE hide='n' ORDER BY date DESC LIMIT 0, $index_comnum"); これを次のように変更します: $query = $this->db->query("SELECT * FROM " . DB_PREFIX . "comment WHERE hide='n' AND poster!='阿珏' ORDER BY date DESC LIMIT 0, $index_comnum"); ヒント:これはSQL文を実行するPHPコードです。条件は、コメント投稿者のユーザー名がブロガーのユーザー名であるかどうかをチェックし、そうであればそのコメントを最新コメントリストに表示しないようにするものです。(メールアドレスやウェブサイトで poster!='阿珏' をチェックすることも可能ですが、私自身は返信する際にメールアドレスを入力しないため、ユーザー名でチェックするしかありません。もちろん、私になりすまさないでくださいね) 最後にファイルを保存し、emlogの管理画面にログインしてキャッシュを更新し、ウェブページを再読み込みすれば、効果が確認できます。

2017年5月6日 · 1 分 · MoeJue

プログラマーの日常、ウイルス感染シリーズ

DropFileName = "svchost.exe" 問題解決策 事の発端はこうです。友人がソースコードを送ってきて、見てほしいと言われました。不注意でその中にあるexeファイルを誤ってクリックしてしまい、ネットワーク接続要求がポップアップ表示されたので、すぐに閉じました。その後、同じディレクトリにシステム音楽フォルダを装ったexe実行ファイルが追加されているのを発見しました。私は事態が良くないと感じましたが、確信は持てませんでした。その後、このフォルダ全体を削除しようとしたところ、「プログラムが使用中です」というメッセージが表示されました。 私はそれをそのままにして、しばらく放置しました。その後の2、3時間で、PCの応答速度がますます遅くなり、物理メモリの使用量が急増していることに気づきました。そこでPCを再起動しました。 その後、コードを書こうと思い、htmlファイルを開いたところ、大変な事態になっていることに気づきました。PC上のすべてのhtmlファイルに問題が発生していました(下図参照)。これで、ウイルスに感染したことが確実になりました。 そしてすぐに、間髪入れずに再び360をダウンロードし、PCのフルスキャンを実行しました(なぜ360をダウンロードしたのかは聞かないでください)。長期間ノーガードで使っていたPCなので、一度や二度、このような事態になるのは避けられません。 個別にテストしたところ、360はウイルスコードのみを削除し、ファイル自体は削除しないことがわかりました。しかし、一番下でコメントアウトされた部分は削除されません。結局、手動で再度処理する必要がありました。処理しなくても大きな問題はありませんが、強迫性障害なので、ちょっと辛いです( ╯▽╰) コードの原理(作用): このscriptコードはvbs言語のウイルスです。このウイルスに感染すると、ローカルのすべてのhtmlドキュメントを開いたときに、このような文字列が表示されることに気づくでしょう。htmlドキュメントだけでなく、dllドキュメントも感染します。もちろん、この種のウイルスは過度に心配する必要はありません。なぜなら、ファイル破壊の役割を果たすだけで、プライバシーのアップロードやアカウントの乗っ取りなどの危険性はないからです。 このコードの大まかな意味は、svchost.exeプロセスを見つけてデータを注入し、その後のバイナリコードを実行するというものです。このウイルスが他のウイルスと異なるのは、このvbsウイルスは感染力が非常に強いことです。htmlファイルが一度感染すると、ユーザーがhtmlドキュメントを開くだけでウイルスが上記のコードを実行し、ローカルPC上のすべてのhtmlファイルとdllファイルに直接感染します。 確かに、DLLファイルも感染するため、一部のソフトウェアは正常に使用できますが、ウイルス対策ソフトはウイルスを検出します。また、多くの常用ソフトウェアを実行するとウイルスが検出されることに気づくでしょう。例えば、以前よく使っていた迅雷や酷狗などの常用ソフトウェアを再度開いたときに、ウイルスがあると表示されたのです。当時、私は非常に奇妙に感じました。迅雷は公式サイトからダウンロードしたのに、なぜウイルスが検出されるのだろうか?ここでの理由は、vbsウイルスが迅雷などのソフトウェアのインストールファイル内のdllに感染したため、ウイルス対策ソフトがvbsスクリプトウイルスという名称でウイルスを検出し続けるのです。 ヒント:記事中の画像は宇宙人に連れ去られました

2017年5月4日 · 1 分 · MoeJue

私の二次元オンラインギャラリー

私のギャラリー - 二次元オンラインギャラリー しばらくの試行錯誤の末、ようやく完成しました。 説明は不要!ベテランが発車します。さあ、乗り遅れないで。あ、ちなみに健全なサイトですよ ご注意:他の方がいる場所での閲覧はご遠慮ください。 ご注意その2:F11キーでブラウザを全画面表示にすると、最高の体験が得られます。 このページを作成した目的はいくつかあります: 1.二次元文化を広め、普及させること。 2.良いものは共有すべきだから。 3.私がその世界を好きだから。 4.あなたより二次元の彼女の方が可愛いから。 5.上記は全部デタラメです。実は、自分が見やすいようにするためでした。 ☞☞ワープゲート 投稿も可能です。 1.二次元の画像または素材であること。スタイル、白黒、デフォルメ(Q版)、男女は問いません。 2.際どい部分の露出は禁止です。それでは美しさに欠けますし、何と言ってもうちは健全なサイトですから。 3.一回の投稿で50枚以上お願いします。 4.投稿する画像は、高画質でウォーターマーク(透かし)がないものに限ります。 すべての画像は私が一枚一枚チェックしますよ^_^ もし不適切な画像を見つけた場合は、ご連絡いただければ削除します。何千枚もの画像があると、たまに審査の目も疲れてしまいますので。その際は、画像のリンクを控えておくのをお忘れなく。 この記事はギャラリーと共に長期的に更新され、該当カテゴリーのトップに固定されます。 初回は「アニメを愛するのは、私たちが幸せを信じているから」という記事を含め、合計716枚の画像を追加しました。今後はアニメ作品ごとに特集を組んでいく予定です。 2017年5月20日 各シリーズの画像を1918枚更新しました。 2017年7月2日 様々な(萌え)女の子の画像を1099枚更新しました(かなり前の素材ですが、女の子ばかりでどうしようもなくて)。 2017年8月10日 数日間ギャラリーを閉鎖し、再度調整を行いました。幸いにもAkoさんに手伝ってもらえました。 サーバー上の画像のリネーム、ハッシュ値の比較を行い、重複していた画像を少しだけ削除しました。 ファイル名のキャッシュ機能を追加しました。今後の画像更新については、ここでは一つ一つ説明しません。 ページの表示スタイルを変更しました。(この部分は、今後もまたいじることになると思います) 画像を百数十枚更新しました。 現在、サーバーには合計 5000枚以上 の画像があります

2017年5月3日 · 1 分 · MoeJue

ウェブサイトのバックエンドアドレスを公開することは非常に危険なことです

ウェブサイトのバックエンドアドレスを公開することは非常に危険なことです。例えば、私のウェブサイトのバックエンドアドレスは次のとおりです。管理ログイン インターネットは複雑な世界であり、各ウェブサイトの管理者は自分自身を守る方法を学ぶ必要があります。 emlogのデフォルトのバックエンドパスはadminディレクトリであり、重要な情報がむき出しで公開されています。 デフォルトのバックエンドパスを変更するには、3つのステップがあります。 adminディレクトリを開き、globals.phpを見つけて、editplusなどのエディタで開きます。メモ帳で開いても構いませんが、結果は保証されません。 フォルダ名をadminからxxxxなどの希望の名前に変更します。 admin/globals.phpファイルを開きます。現在はxxxx/globals.phpになっているはずです。 9行目のコードを編集します。 define(‘TEMPLATE_PATH’, EMLOG_ROOT.’/admin/views/’); adminを新しい名前xxxxに置き換えます。 define(‘TEMPLATE_PATH’, EMLOG_ROOT.’/xxxx/views/’); 3番目のステップ、バックエンドログインをリフレッシュした後、ナビゲーション設定で「ログイン」を非表示にします。そうしないと、クリックすると404エラーが発生し、非常に煩わしいです。 後遺症の解決策: バックエンドパスを変更した後、微語の絵文字画像が表示されなくなります。解決策: include/lib/function.base.phpを開き、以下を見つけます。 $t = str_replace($data,’’,$t); adminをxxxxに置き換えます。 $t = str_replace($data,’’,$t); バックエンドの個人設定で新しいアバターをアップロードしない場合、微語のアバターもフロントエンドに表示されなくなります。解決策: t/index.phpを開き、以下を見つけます。 $avatar = empty($user_cache[UID][‘avatar’]) ? ‘../admin/views/images/avatar.jpg’ : ‘../’ . $user_cache[UID][‘avatar’]; adminをxxxxに置き換えます。 $avatar = empty($user_cache[UID][‘avatar’]) ? ‘../xxxx/views/images/avatar.jpg’ : ‘../’ . $user_cache[UID][‘avatar’]; 次に、テンプレート内のt.php、つまりcontent/templates/テンプレート名/t.phpを開きます。 BLOG_URL . ‘admin/views/images/avatar.jpg’ : adminをxxxxに置き換えます。 BLOG_URL . ‘xxxx/views/images/avatar.jpg’ : テンプレートが破損した場合の「戻る」ボタンのリンクの問題を解決します。デフォルトのadminをクリックするとエラーが発生します。 include/lib/view.phpを開き、以下を見つけます。 emMsg(‘現在のテンプレートは削除または破損しています。バックエンドにログインして別のテンプレートに変更してください。’, BLOG_URL . ‘admin/template.php’); adminをxxxxに置き換えます。 emMsg(‘現在のテンプレートは削除または破損しています。バックエンドにログインして別のテンプレートに変更してください。’, BLOG_URL . ‘xxxx/template.php’); 記事リストページの編集ボタンのリンクの問題を解決します。 テンプレートのmodule.phpファイルを開き、以下を見つけます。 $editflg = ROLE == ROLE_ADMIN || $author == UID ? ‘編集’ : ‘’; ...

2017年4月30日 · 1 分 · MoeJue