HTML과 CSS_HTML/Xhtml_웹페이지 제작을 활용하여 이모티콘이 포함된 댓글 상자를 만드는 방법에 대한 튜토리얼

WBOY
풀어 주다: 2016-05-16 16:36:45
원래의
2260명이 탐색했습니다.

이모티콘이 포함된 HTML 주석 상자입니다. 이모티콘은 Json 데이터를 통해 로드되며, 자신의 기본 설정에 따라 이모티콘을 변경할 수 있습니다. 이 댓글창의 코드는 HTML, CSS, JQ 코드입니다. 그림 1은 원래 상태를 보여주고, 그림 2는 표현식을 클릭했을 때 나타나는 표현식 목록을 보여줍니다. 하나 이상을 마음대로 선택할 수 있습니다. 구현된 코드를 살펴보겠습니다.

사진 1

사진 2

구현된 코드:

 html 코드:

XML/HTML 코드클립보드에 콘텐츠 복사
  1. <div class="메인" > 
  2.  <div class="Input_Box" > 
  3.  <텍스트 영역 class="Input_text" >텍스트 영역> 
  4.  <div class="faceDiv" > div>
  5.  
  6. <div class="Input_Foot" > < 수업="imgBtn" href="javascript:void(0);"> ;>< class="postBtn">OKa > div>  
  7. div>   div>   
css3 코드:

CSS 코드

클립보드에 콘텐츠 복사
  1. .Input_Box {     
  2.     너비495px;     
  3.     높이160px;     
  4.     테두리1px 단단함 #ccc;     
  5.     전환: 테두리 선형 .2s, 상자 그림자 선형 .5s;     
  6.     -moz-transition: 테두리 선형 .2s, -moz-box-shadow 선형 .5s;     
  7.     -webkit-transition: 테두리 선형 .2s, -webkit-box-shadow 선형 .5s;     
  8.     -moz-테두리-반경: 5px;     
  9.     -webkit-테두리-반경: 5px;     
  10.     테두리-반경: 5px;     
  11.     배경색#fff;     
  12.     오버플로숨김;     
  13.     위치절대;     
  14.     -moz-box-shadow: 0 0 5px #ccc;     
  15.     -webkit-box-shadow: 0 0 5px #ccc;     
  16.     상자 그림자: 0 0 5px #ccc;     
  17. }     
  18. .Input_Box>텍스트 영역 {     
  19.     너비485px;     
  20.     높이111px;     
  21.     패딩5px;     
  22.     개요없음;     
  23.     테두리0px 단단함 #fff;     
  24.     크기 조정: 없음;     
  25.     글꼴13px "微软雅黑"ArialHelveticasans-serif;     
  26.     -moz-테두리-반경: 5px;     
  27.     -webkit-테두리-반경: 5px;     
  28.     테두리-반경: 5px;     
  29. }     
  30. .Input_Foot {     
  31.     너비: 100%;     
  32.     높이35px;     
  33.     테두리 상단1px 단색#ccc;     
  34.     배경색#fff;     
  35.     -moz-테두리-반경: 0 0 5픽셀 5픽셀 ;     
  36.     -webkit-테두리-반경: 0 0 5픽셀 5픽셀 ;     
  37.     테두리-반경: 0 0 5픽셀 5픽셀 ;     
  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:활성 {     
  52.     여백 상단9px;     
  53. }     
  54. .imgBtn:hover {     
  55.     배경 위치: 0 -31px     
  56. }     
  57. .postBtn {     
  58.     플로트오른쪽오른쪽;     
  59.     글꼴13px "微软雅黑"ArialHelveticasans-serif;     
  60.     색상#808080;     
  61.     패딩9px 20px 7픽셀 20픽셀;     
  62.     왼쪽 테두리1px 단색#ccc;     
  63.     커서포인터;     
  64.     -moz-테두리-반경: 0 0 5px 0;     
  65.     -webkit-테두리-반경: 0 0 5px 0;     
  66.     테두리-반경: 0 0 5px 0;     
  67. }     
  68. .postBtn:hover {     
  69.     색상#333;     
  70.     배경색#efefef;     
  71. }     
  72. .postBtn:활성 {     
  73.     패딩10px 20px 6픽셀 20픽셀;     
  74. }     
  75. .faceDiv {     
  76.     너비500px;     
  77.     높이120px;     
  78.     테두리 상단1px 단색#ccc;     
  79.     위치절대;     
  80.     배경색#fff;     
  81.     -moz-테두리-반경: 5픽셀 5픽셀 0 0;     
  82.     -webkit-테두리-반경: 5px 5px 0 0;     
  83.     테두리-반경: 5px 5px 0 0 ;     
  84. }     
  85. .faceDiv>img {     
  86.     테두리1px 단단함 #ccc;     
  87.     플로트왼쪽;     
  88.     왼쪽 여백: -1px;     
  89.     여백 상단: -1px;     
  90.     직위친척;     
  91.     너비24px;     
  92.     높이24px;     
  93.     패딩3px 3px 3픽셀 3픽셀;     
  94.     커서포인터;     
  95. }     
  96. .faceDiv>img:hover { 
  97.  배경색: #effefef
  98. .faceDiv>img:active { 
  99. 패딩: 4px 3px 2픽셀 3픽셀;
 
자바스크립트 코드:

JavaScript 코드
클립보드에 콘텐츠 복사
  1. var ImgIputHandler={ 
  2. 얼굴 경로:[
  3. {faceName:"미소",facePath:"0_smile.gif"}, 
  4. {FACENAME: "🎜> , Facepath: " 1_ 撇 撇 .gif " > {faceName:
  5. "color"
  6. ,facePath:"2_color.gif"},  {FACENAME: "Duke"
  7. , Facepath: "3_ Duke .gif" }, {faceName:"Deyi"
  8. ,facePath:"4_Deyi.gif"},                                                                                                                        >
  9. {faceName:
  10. "shy",facePath:"6_shy.gif"}, 
  11. {faceName:
  12. "닥쳐", FacePath:"7_Shut up.gif"},
  13. {faceName:
  14. "울음", FacePath:"9_crying.gif"},
  15. {faceName:
  16. "어색함",facePath:"10_awkward.gif"}, 
  17. {faceName:
  18. "화가",facePath:"11_angry.gif"},  {FACENAME:
  19. "Naughty" , 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:"귀엽다",facePath:"21_cute.gif"}, 
  30. {faceName:"White Eyes",facePath:"22_White Eyes.gif"}, 
  31. {faceName:"오만",facePath:"23_arrogance.gif"}, 
  32. {faceName:"배고픔",facePath:"24_hunger.gif"}, 
  33. {faceName:"갇힌",facePath:"25_trapped.gif"}, 
  34. {faceName:"공포",facePath:"26_Horror.gif"}, 
  35. {faceName:"땀", FacePath:"27_sweat.gif"},
  36. {FACENAME:
  37. "憨" , Facepath: "28_ 憨 笑 .gif" },
  38. {faceName:
  39. "GI",facePath:"29_GI.gif"}, 
  40. {faceName:
  41. "투쟁",facePath:"30_struggle.gif"}, 
  42. {faceName:
  43. "저주",facePath:"31_curse.gif"}, 
  44. {faceName:
  45. "질문",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. "거절" , FacePath: "36_ 衰 .gif" }, {faceName:
  53. "스켈레톤",facePath:"37_skeleton.gif"}, 
  54. {FACENAME: "탭" , Facepath: "38_ hit .gif" },
  55. {faceName:"안녕",facePath:"39_Goodbye.gif"}, 
  56. {faceName:"땀 닦기", FacePath:"40_wipe sweat.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 Hum"
  64. , FacePath: "46_ right hum .gif" },  {faceName:
  65. "하품"
  66. ,facePath:"47_yawn.gif"},  {faceName:
  67. "경멸"
  68. ,facePath:"48_Contempt.gif"},  {faceName:
  69. "불만"
  70. ,facePath:"49_grievance.gif"},  {faceName:
  71. "울 것 같아"
  72. , FacePath:"50_울 것 같아.gif" },  {faceName:
  73. "inidious"
  74. ,facePath:"51_insidious.gif"},  {faceName:
  75. "키스"
  76. , FacePath:"52_Kiss.gif"}, {FACENAME: "무서움"
  77. , Facepath: "53_ <.gif class="string"> }, {faceName:"나쁨"
  78. ,facePath:"54_Poor.gif"},  {faceName:"Chop Knife"
  79. ,facePath:"55_Chop Knife.gif"},  {faceName:"수박"
  80. ,facePath:"56_watermelon.gif"}, 
  81. {faceName:"맥주",facePath:"57_beer.gif"}, 
  82. {faceName:"농구",facePath:"58_basketball.gif"}, 
  83. {faceName:"pingpong",facePath:"59_pingpong.gif"}, 
  84. {faceName:"포옹",facePath:"78_hug.gif"}, 
  85. {faceName:"Handshake",facePath:"81_Handshake.gif"}, 
  86. {faceName:"smiling smugly", facePath:"smiling smugly.gif"},
  87. {faceName:"음악 듣기",facePath:"Listen to music.gif"
  88. ]
  89. , ,
  90. 초기화:함수(){
  91.  var isShowImg=false
  92. $(".Input_text").focusout(함수(){
  93. $(this).parent().css("border-color", "#cccccc");
  94. $(
  95. 이것).parent().css("box-shadow", "없음")
  96. $(
  97. 이것).parent().css("-moz-box-shadow", "없음"); $(
  98. ).parent().css("-webkit-box-shadow", "없음"); });     
  99.         $(".Input_text").focus(기능(){     
  100.         $(이것).parent().css("border-color" "rgba(19,105,172,.75)");     
  101.         $(이것).parent().css("box-shadow" "0 0 3px rgba(19,105,192,.5)");     
  102.         $(이것).parent().css("-moz-box-shadow", "0 0 3px rgba(241,39,232,.5)");     
  103.         $(이것).parent().css("-webkit-box-shadow", "0 0 3px rgba(19,105,252,3)");     
  104.         });     
  105.         $(".imgBtn").click(기능(){     
  106.            if(isShowImg==false){     
  107.                 isShowImg=true;     
  108.                $(이것).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(기능(){     
  114.                             
  115.                        isShowImg=false;     
  116.                        $(이것).parent().animate({marginTop:"0px"},300 );     
  117.                        ImgIputHandler.insertAtCursor($(".Input_text")[0],"[" $( 이것).attr("제목""]");     
  118.                     });     
  119.                 }     
  120.             }그밖에{     
  121.                 isShowImg=false;     
  122.                $(이것).parent().prev().animate({marginTop:"0px"},300);     
  123.             }     
  124.         });     
  125.         $(".postBtn").click(기능(){     
  126.             alert($(".Input_text").val());     
  127.         });     
  128.     },     
  129.     insertAtCursor:함수(myField, myValue) {     
  130.     if (document.selection) {     
  131.         myField.focus();     
  132.         sel = document.selection.createRange();     
  133.         sel.text = myValue;     
  134.         sel.select();     
  135.     } else if (myField.selectionStart || myField.selectionStart == "0") {     
  136.         var startPos = myField.selectionStart;     
  137.         var endPos = myField.selectionEnd;     
  138.         var restoreTop = myField.scrollTop;     
  139.         myField.value = myField.value.substring(0, startPos)   myValue   myField.value.substring(endPos, myField.value.length);     
  140.          (restoreTop > 0) {     
  141.             myField.scrollTop = restoreTop;     
  142.         }     
  143.         myField.focus();     
  144.         myField.selectionStart = startPos   myValue.length;     
  145.         myField.selectionEnd = startPos   myValue.length;     
  146.     } 그밖에 {     
  147.         myField.value  = myValue;     
  148.         myField.focus();     
  149.     }     
  150. }     
  151. }    
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿