ウェブメッセージボード機能を実現するjs

ウェブメッセージボード機能を実現するjs

この記事の例では、Webメッセージボードを実装するためのjsの具体的なコードを参考までに共有しています。具体的な内容は次のとおりです。

1. タイトルバーとコンテンツバー、送信ボタン、メッセージボードを描く

気分:<br/> <input type="text" id="mood"/><br/>
注: <br/> <textarea id="network"></textarea><br/>
<button id="send">公開</button>
<div class="ban"></div>

2. 上記の要素を動的に取得します。

var mood = document.getElementById ("mood");
var ネットワーク = document.getElementById ("ネットワーク");
var send = document.getElementById ("send");
var ban = document.querySelector (".ban");

3. 送信ボタンのクリック イベントを設定します。送信ボタンをクリックすると、下部のメッセージ ボードに入力されたコンテンツが表示されます。

(1) キャッシュ localStorage() の使い方を習得し、時間を利用してキャッシュされた値を取得します。

var time = 新しい Date();

(2)タイトルとコンテンツの値を格納するJSONオブジェクトを作成する

var shuju={
  私の気分:気分の値、
  mynetwork:ネットワーク .値、
  now_time:time.toLocaleString() //2019/7/2 午後7:42:15
  };

(3)値をJSONオブジェクトに保存し、JSON.stringifyを使用して文字列に変換することを忘れないでください。

(4)値を読み取り、キャッシュ内の内容を取得し、メッセージボードインターフェースに表示する関数を作成します。

関数readdata(){
    ban.innerHTML = "";
    var 長さ = localStorage.length - 1;
    for(var i=長さ;i>=0;i--){
      var k=localStorage.key(i); // キー値を取得 var data=JSON.parse (localStorage.getItem(k)); //
        コンソールログ(k);
        ban.innerHTML +=data.mymood +" &nbsp;&nbsp;&nbsp;"+data.mynetwork +" &nbsp;&nbsp;&nbsp;"+ data.now_time +"<br/>";
    }
}

ソースコード:

<!DOCTYPE html>
<html>
<head lang="ja">
    <メタ文字セット="UTF-8">
    <タイトル></タイトル>
    <スタイル>
       。禁止{
           幅:500ピクセル;
           高さ:自動;
           border:1px 黒一色;
       }
        #送信 {
            幅:40px;
            高さ:25px;
            フォントサイズ: 12px;
            テキスト配置: 中央;
            行の高さ: 25px;
            背景:淡いターコイズ色;
        }
    </スタイル>
</head>
<本文>
気分:<br/> <input type="text" id="mood"/><br/>
注: <br/> <textarea id="network"></textarea><br/>
<button id="send">公開</button>
<div class="ban"></div>
<スクリプト>
var mood = document.getElementById ("mood");
var ネットワーク = document.getElementById ("ネットワーク");
var send = document.getElementById ("send");
var ban = document.querySelector (".ban");
//localStorage.clear();
データを読み込む();
send.onclick = 関数(){
  var time = 新しい Date();
  var shuju={
        私の気分:気分の値、
        mynetwork:ネットワーク .値、
        now_time:time.toLocaleString() //2019/7/2 午後7:42:15
    };
    // console.log(JSON.stringify (shuju));
     localStorage.setItem(time.getTime(),JSON.stringify(shuju));
    気分.値="";
    ネットワーク値 = "";

    // alert("正常に公開されました");
     データを読み込む();
}
関数readdata(){
    ban.innerHTML = "";
    var 長さ = localStorage.length - 1;
    for(var i=長さ;i>=0;i--){
      var k=localStorage.key(i); // キー値を取得 var data=JSON.parse (localStorage.getItem(k)); //
        コンソールログ(k);
        ban.innerHTML +=data.mymood +" &nbsp;&nbsp;&nbsp;"+data.mynetwork +" &nbsp;&nbsp;&nbsp;"+ data.now_time +"<br/>";
    }
}
</スクリプト>
</本文>
</html>

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • JavaScript イベント委任の原則
  • jsイベント委譲の詳細な説明
  • JS でのイベント委譲例の簡単な分析
  • Web メッセージボード機能を実装する JavaScript
  • メッセージボードのネイティブJS実装
  • この記事では、イベント委任を使用してJavaScriptメッセージボード機能を実装する方法について説明します。

<<:  JSは画像の滝の流れの効果を実現します

>>:  Tomcat をアンインストールして再インストールする方法 (画像とテキスト付き)

推薦する

Vue3.0はvue-grid-layoutプラグインを使用してドラッグレイアウトを実装します。

目次1. プラグイン2. 幕間3. 実装4. 検証機能1. プラグインまず、私たちが選んだプラグイン...

SQL 面接の質問: 時間差の合計を求める (重複は無視)

ある会社の BI 職の面接を受けたとき、面接で SQL に関する質問がありました。一見すると非常に簡...

Windows 10 での MySQL 5.7.17 のインストールと設定方法のグラフィック チュートリアル

この記事では、最新バージョンの MySQL データベース、つまり MySQL 5.7.17 圧縮バー...

Vue3 コンポジション API の紹介

目次概要例なぜそれが必要なのでしょうか?設定参照、反応的計算して見るライフサイクルVue3.0 は ...

HTMLを使用して、IPを制限する投票ウェブサイトの不正行為スキームを実装する

これは、IP アドレスが制限されている投票 Web サイトの不正行為の手口です。この方法は、投票 W...

Docker Consul コンテナ サービスの更新と見つかった問題の概要

目次1. コンテナサービスの更新とDockerコンサルの検出1. サービス登録と検出とは何ですか? ...

vue+node+socket ioは複数人のインタラクションを実現し、プロセス全体を解放します

1. 背景1. フロントエンドはvue + vuex + socket.io-clientを使用しま...

フロントエンドページのポップアップマスクはページのスクロールを禁止します

フロントエンド開発者がよく遭遇する問題は、ユーザーに情報を提示するためのポップアップ ウィンドウを作...

Bootstrap 3.0 学習ノート CSS関連補足

この記事の主な内容は次のとおりです。 1. ブラウザのサポート2. 画像3. レスポンシブツール4....

bash のスクリプトデバッグメカニズムの詳細な説明

スクリプトをデバッグモードで実行するbash -x <script> を使用すると、スク...

JS での Reduce() メソッドの使用の概要

目次1. 文法2. 例3. その他の関連方法長い間、reduce() メソッドの具体的な使い方を理解...

虫眼鏡コンポーネントのネイティブ js 実装

この記事の例では、参考までに虫眼鏡コンポーネントを開発するためのjsの具体的なコードを共有しています...

vue.config.js からプロジェクト最適化までの vue2.x 構成

目次序文vue.config.js 構成オプションパッケージサイズを縮小するためのパッケージの最適化...

MYSQLが中国語を認識できない問題の恒久的な解決策

ほとんどの場合、MySQL はインストールしたばかりのときは中国語をサポートしません。これはエンコー...