TheDeanVanGreunen

js script embedded rendering script example

Sep 28th, 2020 (edited)
133
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.50 KB | None | 0 0
  1. 1. design your html code (have the parent/root html ewlemnt be a div, and not the body or html, also exclude head, meta and other header related stuff.
  2. 2. design your css code
  3. 3. design the dynmiac js code for this site.
  4. 4. Compile all html, css and javascript into a single minified js file, this then can be included in any page with an HTML script tag.
  5.  
  6. (steps 1, 2 and 3)
  7. example HTML:
  8. <div class="app-root">
  9. <label for="num1">
  10. <span>Number 1</span>
  11. <input id="num1" placeholder="0" value="0"/>
  12. </label>
  13. <label for="num2">
  14. <span>Number 2</span>
  15. <input id="num2" placeholder="0" value="0"/>
  16. </label>
  17. <label for="calc_btn">
  18. <button id="calc_btn">Calculate</button>
  19. </label>
  20. <label for="output">
  21. <span>Sum: </span>
  22. <input id="output" placeholder="0"/>
  23. </label>
  24. </div>
  25.  
  26. example CSS:
  27. .app-root {margin: 0; padding: 0;}
  28.  
  29. example JS:
  30. document.getElementByID('calc_btn').addEventListener('click', function(){
  31. let num1 = document.getElementByID('num1').value;
  32. let num2 = document.getElementByID('num2').value;
  33. let sum = num1 + num2;
  34. document.getElementByID('output').value = sum;
  35. });
  36.  
  37. STEP 4 - part 1
  38.  
  39. # convert your html into js,
  40.  
  41. var app_root = document.createElement("div");
  42. app_root.classList.add("app-root");
  43.  
  44. let label_num1 = document.createElement("label");
  45. let label_num1_span = document.createElement("span")
  46. label_num1_span.innerHTML = "Num 1";
  47. let label_num1_input = document.createElement("input")
  48. label_num1_input.id = "num1";
  49. label_num1_input.placeholder = 0;
  50. label_num1_input.value = 0;
  51.  
  52. label_num1.append(label_num1_span);
  53. label_num1.append(label_num1_input);
  54.  
  55. let label_num2 = document.createElement("label");
  56. let label_num2_span = document.createElement("span")
  57. label_num2_span.innerHTML = "Num 2";
  58. let label_num2_input = document.createElement("input")
  59. label_num2_input.id = "num2";
  60. label_num2_input.placeholder = 0;
  61. label_num2_input.value = 0;
  62.  
  63. label_num2.append(label_num2_span);
  64. label_num2.append(label_num2_input);
  65.  
  66.  
  67. let label_btn = document.createElement("label");
  68. let label_btn_input = document.createElement("input")
  69. label_btn_input.id = "calc_btn";
  70. label_btn_input.value = "Calculate";
  71.  
  72. label_btn.append(label_btn_input );
  73.  
  74.  
  75. let label_output = document.createElement("label");
  76. let label_output_span = document.createElement("span")
  77. label_output_span.innerHTML = "Output";
  78. let label_output_input = document.createElement("input")
  79. label_num1_input.id = "output";
  80. label_num1_input.placeholder = 0;
  81. label_num1_input.value = 0;
  82.  
  83. label_num1.append(label_num1_span);
  84. label_num1.append(label_num1_input);
  85.  
  86. app_root.append(label_num1);
  87. app_root.append(label_num2);
  88. app_root.append(label_btn);
  89.  
  90. document.body.append(app_root); // or you could use document.write();
  91.  
  92. STEP 4 - part 2
  93. # convert your ccs into js
  94.  
  95. let global_root_style = document.createElement('style');
  96. global_root_style .type = 'text/css';
  97. global_root_style .innerHTML = '.app-root {margin: 0; padding: 0;}';
  98. document.getElementsByTagName('head')[0].appendChild(global_root_style);
  99.  
  100. STEP 4 - part 5
  101. # join all parts from step 4 together such that into a function like this.
  102.  
  103. (function() {
  104. //////////////////////////////////////////////////////////////////////////
  105. // First Register CSS
  106. //////////////////////////////////////////////////////////////////////////
  107. let global_root_style = document.createElement('style');
  108. global_root_style .type = 'text/css';
  109. global_root_style .innerHTML = '.app-root {margin: 0; padding: 0;}';
  110. document.getElementsByTagName('head')[0].appendChild(global_root_style);
  111. //////////////////////////////////////////////////////////////////////////
  112. // Then Register HTML
  113. //////////////////////////////////////////////////////////////////////////
  114. var app_root = document.createElement("div");
  115. app_root.classList.add("app-root");
  116. let label_num1 = document.createElement("label");
  117. let label_num1_span = document.createElement("span")
  118. label_num1_span.innerHTML = "Num 1";
  119. let label_num1_input = document.createElement("input")
  120. label_num1_input.id = "num1";
  121. label_num1_input.placeholder = 0;
  122. label_num1_input.value = 0;
  123. label_num1.append(label_num1_span);
  124. label_num1.append(label_num1_input);
  125. let label_num2 = document.createElement("label");
  126. let label_num2_span = document.createElement("span")
  127. label_num2_span.innerHTML = "Num 2";
  128. let label_num2_input = document.createElement("input")
  129. label_num2_input.id = "num2";
  130. label_num2_input.placeholder = 0;
  131. label_num2_input.value = 0;
  132. label_num2.append(label_num2_span);
  133. label_num2.append(label_num2_input);
  134. let label_btn = document.createElement("label");
  135. let label_btn_input = document.createElement("input")
  136. label_btn_input.id = "calc_btn";
  137. label_btn_input.value = "Calculate";
  138. label_btn_input.type="button";
  139. label_btn.append(label_btn_input );
  140. let label_output = document.createElement("label");
  141. let label_output_span = document.createElement("span")
  142. label_output_span.innerHTML = "Output";
  143. let label_output_input = document.createElement("input")
  144. label_num1_input.id = "output";
  145. label_num1_input.placeholder = 0;
  146. label_num1_input.value = 0;
  147. label_num1.append(label_num1_span);
  148. label_num1.append(label_num1_input);
  149. app_root.append(label_num1);
  150. app_root.append(label_num2);
  151. app_root.append(label_btn);
  152. document.body.append(app_root); // or you could use document.write();
  153. //////////////////////////////////////////////////////////////////////////
  154. // Then Register JS
  155. //////////////////////////////////////////////////////////////////////////
  156. document.getElementById('calc_btn').addEventListener('click', function(){
  157. let num1 = document.querySelector('#num1').value;
  158. let num2 = document.querySelector('#num2').value;
  159. let sum = num1 + num2;
  160. document.querySelector('#output').value = sum;
  161. });
  162. })()
  163.  
  164. then minimize the step 4 joined output code into a script file, you can use this site https://javascript-minifier.com/
  165.  
  166. the minimized output will look like this:
  167.  
  168.  
  169. //////////////////////////////////////////////////////////////////////////
  170. // Minimized output code
  171. //////////////////////////////////////////////////////////////////////////
  172. !function(){let e=document.createElement("style");e.type="text/css",e.innerHTML=".app-root {margin: 0; padding: 0;}",document.getElementsByTagName("head")[0].appendChild(e);var t=document.createElement("div");t.classList.add("app-root");let n=document.createElement("label"),a=document.createElement("span");a.innerHTML="Num 1";let l=document.createElement("input");l.id="num1",l.placeholder=0,l.value=0,n.append(a),n.append(l);let c=document.createElement("label"),d=document.createElement("span");d.innerHTML="Num 2";let u=document.createElement("input");u.id="num2",u.placeholder=0,u.value=0,c.append(d),c.append(u);let p=document.createElement("label"),m=document.createElement("input");m.id="calc_btn",m.value="Calculate",m.type="button",p.append(m);document.createElement("label");document.createElement("span").innerHTML="Output";document.createElement("input");l.id="output",l.placeholder=0,l.value=0,n.append(a),n.append(l),t.append(n),t.append(c),t.append(p),document.body.append(t),document.getElementById("calc_btn").addEventListener("click",function(){let e=document.querySelector("#num1").value+document.querySelector("#num2").value;document.querySelector("#output").value=e})}();
Add Comment
Please, Sign In to add comment