HTML と CSS を使用して絵文字付きのコメント ボックスを作成する方法のチュートリアル_HTML/Xhtml_Web ページの作成

WBOY
リリース: 2016-05-16 16:36:45
オリジナル
2253 人が閲覧しました

絵文字を含む HTML コメント ボックス。絵文字は Json データを通じて読み込まれ、好みに応じて絵文字を変更できます。このコメントボックスのコードはHTML、CSS、JQコードです。図 1 は元の状態を示し、図 2 は式をクリックしたときに表示される式のリストを示しています。1 つまたは複数を自由に選択できます。実装されたコードを見てみましょう。

写真 1

写真 2

実装されたコード:

htmlコード:

XML/HTML コードコンテンツをクリップボードにコピー
  1. <div class="Main" >
  2. <div class="Input_Box" >
  3. <テキストエリア クラス="Input_text" >テキストエリア>
  4. <div class="faceDiv" > div>
  5. <div class="Input_Foot" > <a クラス="imgBtn" href="javascript:void(0);"> ;a><a クラス="postBtn">OKa > div>
  6. div> div>
css3 コード:

CSS コード

コンテンツをクリップボードにコピーします
  1. .Input_Box {
  2. : 495px;     
  3. 高さ: 160px;     
  4. ボーダー: 1px solid #ccc;     
  5. トランジション: ボーダー linear .2s、 box-shadow linear .5s;     
  6. -moz-transition: border linear .2s、-moz-box-shadow linear .5s;     
  7. -webkit-transition: border linear .2s、-webkit-box-shadow linear .5s;     
  8. -moz-border-radius: 5px;     
  9. -webkit-border-radius: 5px;     
  10. ボーダー-半径: 5px;     
  11. 背景色: #fff;     
  12. オーバーフロー: 非表示;     
  13. 位置: 絶対;     
  14. -moz-box-shadow: 0 0 5px #ccc;     
  15. -webkit-box-shadow: 0 0 5px #ccc;     
  16. box-shadow: 0 0 5px #ccc;     
  17. }     
  18. .Input_Box>テキストエリア {
  19. : 485px;     
  20. 高さ: 111px;     
  21. パディング: 5px;     
  22. 概要: なし;     
  23. ボーダー: 0px solid #fff;     
  24. サイズ変更: なし;     
  25. フォント: 13px "微软雅黑"ArialHelveticaサンセリフ;     
  26. -moz-border-radius: 5px;     
  27. -webkit-border-radius: 5px;     
  28. ボーダー-半径: 5px;     
  29. }
  30. .Input_Foot {
  31. : 100%;     
  32. 高さ: 35px;     
  33. ボーダートップ: 1px solid #ccc;     
  34. 背景色: #fff;     
  35. -moz-ボーダー-半径: 0 0 5px 5px ;     
  36. -webkit-ボーダー-半径: 0 0 5px 5px ;     
  37. ボーダー-半径: 0 0 5px 5px ;     
  38. 位置: 絶対;     
  39. }     
  40. .imgBtn {
  41. フロート: ;     
  42. マージントップ: 8px;     
  43. マージン左: 10px;     
  44. 背景画像: url(imgs.png);     
  45. バックグラウンドリピート: リピートなし;     
  46. 背景位置: 0 -13px;     
  47. 高さ: 18px;     
  48. : 20px;     
  49. カーソル: ポインタ
  50. }
  51. .imgBtn:active {
  52. マージントップ: 9px;     
  53. }
  54. .imgBtn:hover {
  55. 背景位置: 0 -31px
  56. }
  57. .postBtn {
  58. float: rightright;     
  59. フォント: 13px "微软雅黑"ArialHelveticaサンセリフ;     
  60. : #808080;     
  61. パディング: 9px 20px 7px 20px;     
  62. 左枠: 1px solid #ccc;     
  63. カーソル: ポインタ;     
  64. -moz-border-radius: 0 0 5px 0;     
  65. -webkit-border-radius: 0 0 5px 0;     
  66. ボーダー-半径: 0 0 5px 0;     
  67. }     
  68. .postBtn:hover {
  69. カラー: #333;     
  70. 背景色: #efefef;     
  71. }
  72. .postBtn:active {
  73. パディング: 10px 20px 6px 20px;     
  74. }
  75. .faceDiv {
  76. : 500px;     
  77. 高さ: 120px;     
  78. ボーダートップ: 1px solid #ccc;     
  79. 位置: 絶対;     
  80. 背景色: #fff;     
  81. -moz-border-radius: 5px 5px 0 0;     
  82. -webkit-border-radius: 5px 5px 0 0;     
  83. ボーダー-半径: 5px 5px 0 0 ;     
  84. }
  85. .faceDiv>img {
  86. ボーダー: 1px solid #ccc;     
  87. フロート: ;     
  88. マージン左: -1px;     
  89. マージントップ: -1px;     
  90. 位置: 相対;     
  91. : 24px;     
  92. 高さ: 24px;     
  93. パディング: 3px 3px 3px 3px;     
  94. カーソル: ポインタ;     
  95. }
  96. .faceDiv>img:hover {
  97. 背景色: #efefef;
  98. }
  99. .faceDiv>img:active {
  100. パディング: 4px 3px 2px 3px;
  101. }
JavaScript コード:

JavaScript コード
コンテンツをクリップボードにコピーします
  1. var ImgIputHandler={
  2. facePath:[
  3. {faceName:"smile",facePath:"0_smile.gif"},
  4. <{> {FACENAME: "🎜> 、フェイスパス: " 1_ 撇 撇 .gif " > {faceName:
  5. "色"
  6. ,facePath:"2_色.gif"}, <{> {FACENAME: "Duke"
  7. 、フェイスパス: "3_ Duke .gif" }、<🎜 {faceName:"Deyi"
  8. ,facePath:"4_Deyi.gif"}, >
  9. {faceName:
  10. "シャイ",facePath:"6_shy.gif"},
  11. {faceName:
  12. "黙って", facePath:"7_黙って.gif"},
  13. {faceName:
  14. "泣き"、facePath:"9_crying.gif"}、
  15. {faceName:
  16. "気まずい",facePath:"10_awkward.gif"},
  17. {faceName:
  18. "怒り",facePath:"11_angry.gif"}, <{> {FACENAME:
  19. "いたずら" 、FacePath: "12_ 皮 .gif" }、<🎜 🎜 🎜、 {faceName:
  20. "バーティース",facePath:"13_Bargain.gif"}, {faceName:
  21. "サプライズ",facePath:"14_surprise.gif"}, {faceName:
  22. 「悲しい」,facePath:"15_sad.gif"}, {faceName:
  23. "クール",facePath:"16_cool.gif"}, {faceName:
  24. "冷や汗",facePath:"17_Cold Sweat.gif"}, > {faceName:
  25. "クレイジー"
  26. 、facePath:"18_Crazy.gif"}、
  27. {faceName:"嘔吐",facePath:"19_vomit.gif"},
  28. <{> {FACENAME: "笑顔" 、FacePath: "20_linking .gif" }、
  29. {faceName:"cute",facePath:"21_cute.gif"},
  30. {faceName:"White Eyes",facePath:"22_White Eyes.gif"},
  31. {faceName:"傲慢",facePath:"23_arrogance.gif"},
  32. {faceName:"hunger",facePath:"24_hunger.gif"},
  33. {faceName:"trapped",facePath:"25_trapped.gif"},
  34. {faceName:"ホラー",facePath:"26_Horror.gif"},
  35. {faceName:"スウェット"、facePath:"27_sweat.gif"}、
  36. <{> {FACENAME:
  37. "憨" 、フェイスパス: "28_ 憨笑 .gif" }, <🎜
  38. {faceName:
  39. "GI",facePath:"29_GI.gif"},
  40. {faceName:
  41. 「闘争」,facePath:"30_struggle.gif"},
  42. {faceName:
  43. "curse",facePath:"31_curse.gif"},
  44. {faceName:
  45. "question",facePath:"32_question.gif"},
  46. {faceName:
  47. "Sh",facePath:"33_boo.gif"},
  48. {faceName:
  49. "halo",facePath:"34_halo.gif"},
  50. {faceName:
  51. "拷問",facePath:"35_torture.gif"}, <{> {FACENAME:
  52. "decline" , FacePath: "36_ 衰退 .gif" }, <🎜 {faceName:
  53. "スケルトン"、facePath:"37_skeleton.gif"}、
  54. <{> {FACENAME: "タップ" 、フェイスパス: "38_ hit .gif" }、<🎜
  55. {faceName:"さようなら",facePath:"39_Goodbye.gif"},
  56. {faceName:「汗を拭く」、facePath:"40_汗を拭く.gif"}、
  57. {faceName:
  58. "鼻をほじる", facePath:"41_鼻をほじる.gif"}, {faceName:
  59. "拍手",facePath:"42_Applause.gif"}, {faceName:
  60. 「とても恥ずかしいです」、facePath:「43_恥ずかしいです。gif」 }、 {faceName:
  61. "悪い笑顔"、facePath:"44_bad smile.gif"}、 {faceName:
  62. "Zuo Hengheng"、facePath:"45_left Hengheng.gif" }、 {faceName:
  63. "Right Heng Heng", facePath:"46_Right Heng Heng.gif" }, {faceName:
  64. "あくび",facePath:"47_yawn.gif"}, {faceName:
  65. "軽蔑",facePath:"48_Contempt.gif"}, {faceName:
  66. 「苦情」,facePath:"49_grievance.gif"}, {faceName:
  67. "泣きそう"、facePath:"50_泣きそう.gif" }、 {faceName:
  68. "insidious",facePath:"51_insidious.gif"}, {faceName:
  69. "Kiss"、facePath:"52_Kiss.gif"}、 <{> {FACENAME:
  70. "怖い"
  71. 、フェイスパス: "53_ <.gif" }、<🎜 {faceName:
  72. "悪い"
  73. ,facePath:"54_Poor.gif"}, {faceName:
  74. "チョップナイフ"
  75. ,facePath:"55_Chop Knife.gif"}, {faceName:
  76. "スイカ"
  77. ,facePath:"56_watermelon.gif"}、
  78. {faceName:"ビール",facePath:"57_beer.gif"},
  79. {faceName:"バスケットボール",facePath:"58_basketball.gif"},
  80. {faceName:"pingpong",facePath:"59_pingpong.gif"},
  81. {faceName:"ハグ",facePath:"78_hug.gif"},
  82. {faceName:"ハンドシェイク",facePath:"81_Handshake.gif"},
  83. {faceName:"ドヤ顔"、facePath:"ドヤ顔.gif"}、
  84. {faceName:"音楽を聴く",facePath:"music.gif を聴く"}
  85. ]
  86. 、 、
  87. 初期化:関数(){
  88. var isShowImg=false;
  89. $(
  90. ".Input_text").focusout(function(){
  91. $(
  92. this).parent().css("border-color", "#cccccc"); $(
  93. this
  94. ).parent().css("box-shadow", "なし"); $(this
  95. ).parent().css(
  96. "-moz-box-shadow", 「なし」); $(this).parent().css(
  97. "-webkit-box-shadow"
  98. , 「なし」); });     
  99. $(".Input_text").focus(function(){
  100. $(this).parent().css("border-color", "rgba(19,105,172,.75)");     
  101. $(this).parent().css("box-shadow", "0 0 3px rgba(19,105,192,.5)");     
  102. $(this).parent().css("-moz-box-shadow", "0 0 3px rgba(241,39,232,.5)");     
  103. $(this).parent().css("-webkit-box-shadow", "0 0 3px rgba(19,105,252,3)");     
  104. });     
  105. $(".imgBtn").click(function(){
  106. if(isShowImg==false){
  107. isShowImg=true;     
  108. $(this).parent().prev().animate({marginTop:"-125px"},300);     
  109. if($(".faceDiv").children().length==0){
  110. for(var i=0;i
  111. $(".faceDiv").append(" ImgIputHandler。 facePath[i].faceName "" src="face/"ImgIputHandler.facePath[i].facePath "" />");     
  112. }     
  113. $(".faceDiv>img").click(function(){
  114. isShowImg=false;     
  115. $(this).parent().animate({marginTop:"0px"},300 );     
  116. ImgIputHandler.insertAtCursor($(".Input_text")[0],"[" $( this).attr("title") "]");     
  117. });     
  118. }
  119. }else{
  120. isShowImg=false;     
  121. $(this).parent().prev().animate({marginTop:"0px"},300);     
  122. }
  123. });     
  124. $(".postBtn").click(function(){
  125. alert($(".Input_text").val());     
  126. });     
  127. }、
  128. insertAtCursor:関数(myField, myValue) {
  129. if (document.selection) {
  130. myField.focus();     
  131. sel = document.selection.createRange();     
  132. sel.text = myValue;     
  133. sel.select();     
  134. else if (myField.selectionStart || myField.selectionStart == "0") {
  135. var startPos = myField.selectionStart;     
  136. var endPos = myField.selectionEnd;     
  137. var restoreTop = myField.scrollTop;     
  138. myField.value = myField.value.substring(0, startPos) myValue myField.value.substring(endPos, myField.value.length);     
  139. if (restoreTop > 0) {
  140. myField.scrollTop = restoreTop;     
  141. }
  142. myField.focus();     
  143. myField.selectionStart = startPos myValue.length;     
  144. myField.selectionEnd = startPos myValue.length;     
  145. } else {
  146. myField.value = myValue;     
  147. myField.focus();     
  148. }
  149. }
  150. }
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート