ì§ë 문ììì ë¤ë¤ì§ íìì ì¸ ì´ë¡ ì ëë¶ë¶ì ë°íì¼ë¡, ì´ ë¬¸ìììë ì¤ì ì ì¸ ê²½íì ì ê³µí©ëë¤. ì¬ê¸°ì ì¬ì©ì ì ì(custom) í¨ì를 ë§ëë ì°ìµì í ì ììµëë¤. ê·¸ ê³¼ì ìì í¨ì를 ë¤ë£¨ë ë° ìì´ ì ì©í ì¸ë¶ ì¬íì ì¤ëª í ê²ì ëë¤.
íìí ì¬ì ì§ì: 기본ì ì¸ ì»´í¨í° ì¬ì© ë¥ë ¥, HTMLê³¼ CSSì ëí 기본ì ì¸ ì´í´, JavaScript 첫걸ì, í¨ì â ì½ë ì¬ì¬ì©. 목í: ì¬ì©ì ì ì í¨ì를 ë§ë¤ì´ë³´ê¸°, ê·¸ë¦¬ê³ ê·¸ì ê´ë ¨ë ì ì©í ì¸ë¶ ì¬í ì¢ ë ì¤ëª í기. ì§ì í´ë³´ê¸°: í¨ì를 ë§ë¤ì´ ë´ ìë¤ì°ë¦¬ê° ë§ë¤ ì¬ì©ì ì ì í¨ìë displayMessage()
ë¼ë ì´ë¦ì
ëë¤. ì´ í¨ìë ì¹ íì´ì§ì ì¬ì©ì ì ì ë©ìì§ ë°ì¤ë¥¼ íìíê³ ë¸ë¼ì°ì ì ë´ì¥ alert() í¨ì를 ëì²´íë ìí ì í ê²ì
ëë¤. ì°ë¦¬ë ì´ê²ì ì ì 보긴 íì§ë§, 기ìµì ëì´ë ¤ ë´
ìë¤. ìíë ì´ë¤ íì´ì§ììë ì§, ë¤ìì ë¸ë¼ì°ì ì JavaScript ì½ìì ì
ë ¥í´ ë³´ì¸ì:
alert("This is a message");
alert
í¨ìë íëì ì¸ì(argument)를 ì·¨í©ëë¤ â alert ë°ì¤ì íìë 문ìì´ì
ëë¤. ë©ìì§ë¥¼ ë°ê¾¸ê¸° ìí´ì 문ìì´ì ë³í를 ì¤ ë³´ì¸ì.
alert
í¨ìë ì íì ì
ëë¤: ë©ìì§ë¥¼ ë°ê¿ ìë ìì§ë§, ìì, ìì´ì½ ë± ê·¸ ë°ì ë¤ë¥¸ ê²ìë ì½ê² ë³í를 ì¤ ì ììµëë¤. ì°ë¦¬ë ë ì¬ë¯¸ìë ê²ì ë§ë¤ ê²ì
ëë¤.
ì°¸ê³ : ì´ ìì ë 모ë íëì ì¸ ë¸ë¼ì°ì ìì ì ëìí ê²ì´ì§ë§, ì½ê° ì¤ëë ë¸ë¼ì°ì ììë ì¤íì¼ì´ ì¡°ê¸ ì´ìíê² ì ì©ë ì§ë ëª¨ë¦ ëë¤. Firefox, Opera, ëë Chromeê°ì ë¸ë¼ì°ì ìì ì´ ì°ìµì ì§íí기를 ì¶ì²í©ëë¤.
기본ì ì¸ í¨ì기본ì ì¸ í¨ì를 ë§ë¤ë©´ì ììí´ ë´ ìë¤.
ì°¸ê³ : í¨ìì ì´ë¦ì ë¶ì¼ ë ë³ì ëª ëª ê·ì¹ê³¼ ê°ì ê·ì¹ì ë°ë¼ì¼ í©ëë¤. í¨ìì ë³ì를 ë¼ì´ëê³ ì´ì¼ê¸°í ì ìì¼ë¯ë¡, ì´ë ê² íë ê²ì ê´ì°®ìµëë¤ â í¨ìëª ì ë¤ì ê´í¸ê° ëíëì§ë§ ë³ìë ê·¸ë ì§ ììµëë¤.
function-start.html íì¼ì ë¤ì´ë¡ëí í ììí´ ë´
ìë¤. HTMLì ê°ë¨í©ëë¤ â bodyë ë²í¼ íëë§ì í¬í¨íê³ ììµëë¤. ëí 커ì¤í
ë©ìì§ ë°ì¤ë¥¼ ê¾¸ë° ê¸°ë³¸ì ì¸ CSSì, JavaScript를 ë£ì ë¹ <script>
ììê° ì ê³µë©ëë¤.
ë¤ìì¼ë¡, ë¤ìì <script>
ìì ë´ë¶ì ì¶ê°í´ ë³´ì¸ì:
function displayMessage() {}
ì°ë¦¬ë í¤ìë function
ì¼ë¡ ììíëë°, ì´ë ì°ë¦¬ê° í¨ì를 ì ìíê³ ìë¤ë ê²ì ì미í©ëë¤. ì´ê² ë¤ììë ì°ë¦¬ê° í¨ìì ë¶ì´ê³ ì¶ì ì´ë¦ì´ ì¤ê³ , ê·¸ ë¤ììë ê´í¸ê° ì¤ê³ , ê·¸ ë¤ììë ì¤ê´í¸ê° ìµëë¤. í¨ìì ë£ê³ ì íë 매ê°ë³ì(parameter)ë ê´í¸ ìì ë¤ì´ê°ê³ , í¨ì를 í¸ì¶íì ë ì¤íë ì½ëë ì¤ê´í¸ ìì ë¤ì´ê°ëë¤.
ë§ì§ë§ì¼ë¡, ë¤ìì ì½ë를 ì¤ê´í¸ ìì ì¶ê°í´ ë³´ì¸ì:
const html = document.querySelector("html");
const panel = document.createElement("div");
panel.setAttribute("class", "msgBox");
html.appendChild(panel);
const msg = document.createElement("p");
msg.textContent = "This is a message box";
panel.appendChild(msg);
const closeBtn = document.createElement("button");
closeBtn.textContent = "x";
panel.appendChild(closeBtn);
closeBtn.onclick = function () {
panel.parentNode.removeChild(panel);
};
ì½ëê° ê½¤ 긴 í¸ì´ë ì¡°ê¸ì© ì¤ëª ì ì´ì´ê°ê² ìµëë¤.
첫 ë²ì§¸ ì¤ì <html>
ìì를 ì ííê³ , html
ììì ê·¸ê²ì ëí 참조를 ì ì¥í기 ìí´ document.querySelector()
ë¼ë DOM API í¨ì를 ì¬ì©íìµëë¤. ì´ë¥¼ íµí´, ì°ë¦¬ë ëì¤ì ì´ ììì ì´ë°ì ë° ê²ë¤ì í ì ììµëë¤.
const html = document.querySelector("html");
ë¤ì ì¹ì
ì <div>
ìì를 ìì±í기 ìí´ document.createElement()
ë¼ë ë ë¤ë¥¸ DOM API í¨ì를 ì¬ì©íê³ panel
ììì ê·¸ê²ì ëí 참조를 ì ì¥í©ëë¤. ì´ ììë ë©ìì§ ë°ì¤ì ë°ê¹¥ 컨í
ì´ëê° ë ê²ì
ëë¤.
ê·¸ í, í¨ëì ìë class
ì´í¸ë¦¬ë·°í¸ì msgBox
ë¼ë ê°ì ì¤ì í기 ìí´ Element.setAttribute()
ë¼ë ë ë¤ë¥¸ DOM API í¨ì를 ì¬ì©í©ëë¤. ì´ë ê² íë ì´ì ë ìì를 ì¤íì¼í기 ì½ê² ë§ë¤ê¸° ìí¨ì
ëë¤ â ë§ì½ CSS를 ë³´ë©´, ë©ìì§ ë°ì¤ì ë©ìì§ ë°ì¤ì 컨í
ì¸ ë¥¼ ì¤íì¼í기 ìí´ .msgBox
í´ëì¤ ì íì를 ì¬ì©íê³ ìë ê²ì ë³¼ ì ìì ê²ì
ëë¤.
ë§ì§ë§ì¼ë¡, ì°ë¦¬ë ììì ì ì¥í html
ììì Node.appendChild()
ë¼ë DOM í¨ì를 í¸ì¶íëë°, ì´ë í ìì를 ë¤ë¥¸ ìì ìì ê·¸ê²ì ììì¼ë¡ì ì¤ì²©í©ëë¤. ì°ë¦¬ë <html>
ìì ìì ë§ë¶ì´ê¸°ë¥¼ ìíë ììì¼ë¡ì í¨ë <div>
를 ëª
ìíìµëë¤. ì°ë¦¬ê° ìì±í ììê° íì´ì§ì í¼ìì ëíëì§ë ìì¼ë¯ë¡ ì°ë¦¬ë appendChild를 ì¬ì©í íìê° ììµëë¤ â panelì ì´ë ë£ìì§ ëª
ìí´ì¼ í©ëë¤.
const panel = document.createElement("div");
panel.setAttribute("class", "msgBox");
html.appendChild(panel);
ë¤ìì ë ì¹ì
ì ìë¡ì´ ìì ë ê° â <p>
ì <button>
â 를 ìì±í기 ìí´ ì´ë¯¸ ì´í´ë³¸ createElement()
ì appendChild()
í¨ì를 ì¬ì©íê³ ì´ê²ë¤ì íì´ì§ì í¨ë <div>
ì ììì¼ë¡ì ì½ì
í©ëë¤. ë¨ë½ ìì ë©ìì§ì, ë²í¼ ìì 'x'를 ì½ì
í기 ìí´ ì°ë¦¬ë ì´ ììë¤ì Node.textContent
íë¡í¼í°ë¥¼ ì¬ì©í´ ììì í
ì¤í¸ ì½í
ì¸ ë¥¼ ëíë
ëë¤. ì´ ë²í¼ì ì ì ê° ë©ìì§ ë°ì¤ë¥¼ ë«ê¸°ë¥¼ ìí ë í´ë¦ë /ìëë íìê° ìë ê²ì
ëë¤.
const msg = document.createElement("p");
msg.textContent = "This is a message box";
panel.appendChild(msg);
const closeBtn = document.createElement("button");
closeBtn.textContent = "x";
panel.appendChild(closeBtn);
ë§ì§ë§ì¼ë¡, ì°ë¦¬ë ë²í¼ì´ í´ë¦ëìì ë, ì ì²´ í¨ëì íì´ì§ìì ìì í기 ìí´ â ë©ìì§ ë°ì¤ë¥¼ ë«ê¸° ìí´ â ëªëª ì½ëê° ì¤íëëë¡ GlobalEventHandlers.onclick
ì´ë²¤í¸ í¸ë¤ë¬ë¥¼ ì¬ì©í©ëë¤.
ê°ëµíê² ë§íìë©´, onclick
í¸ë¤ë¬ë ë²í¼ì´ í´ë¦ëìì ë ì´ë¤ ì½ë를 ì¤íí ì§ ëª
ìí기 ìí´ í¨ìì ì¤ì ë ì ìë, ë²í¼ìì (ì¬ì¤ì, íì´ì§ì ìë ì´ë í ììë¤ììë ì§) ì¬ì© ê°ë¥í íë¡í¼í°ì
ëë¤. ì°¨íì ì´ë²¤í¸ 문ììì ì´ê²ì ëí´ ë ë§ì´ ë°°ì¸ ê²ì
ëë¤. ì°ë¦¬ë onclick
í¸ë¤ë¬ë¥¼ ìµëª
í¨ìë¡ ë§ë¤ìëë°, ì´ë ë²í¼ì´ í´ë¦ëìì ë ì¤íí ì½ë를 í¬í¨í©ëë¤. í¨ì ë´ë¶ì ì½ëë ì°ë¦¬ê° í¹ì í ìì ìì â ì´ ê²½ì° í¨ë <div>
â 를 ì ê±°íê³ ì¶ë¤ë ê²ì ëª
ìí기 ìí´ Node.removeChild()
DOM API를 ì¬ì©í©ëë¤.
closeBtn.onclick = function () {
panel.parentNode.removeChild(panel);
};
기본ì ì¼ë¡, ì´ ì ì²´ ì½ë ë¸ë¡ì ìëì ê°ì´ ë³´ì´ë HTML ë¸ë¡ì ìì±íê³ , íì´ì§ì ì½ì í©ëë¤:
<div class="msgBox">
<p>This is a message box</p>
<button>x</button>
</div>
ì´ê²ì ë«ê³ ëì¤ê¸°ì ë§ì ì½ëììµëë¤ â ì§ê¸ì ì´ë»ê² ì½ëì 모ë ë¶ë¶ì´ ëìíëì§ ì íí 기ìµíì§ ëª»í´ë ë무 ê±±ì íì§ë ë§ì¸ì! ì´ ë¬¸ììì ì°ë¦¬ê° ì§ì¤í기를 ìíë 주ë ë¶ë¶ì í¨ìì 구조ì ì¬ì©ì´ì§ë§, ì°ë¦¬ë ì´ ìì ì ëí´ ë¬´ì¸ê° í¥ë¯¸ë¡ì´ ê²ì ë³´ì¬ì£¼ê³ ì¶ììµëë¤.
í¨ì í¸ì¶í기ì´ì ì¬ë¬ë¶ì <script>
ììì ì주 ì ìì±ë í¨ì ì ì를 ê°ì§ê³ ìì§ë§, ì´ê²ì íì¬ ìí ê·¸ëë¡ë ì무ê²ë íì§ ìì ê²ì
ëë¤.
í¨ì를 í¸ì¶í기 ìí´, ë¤ìì ì½ë를 í¨ì ìëì í¬í¨ìì¼ ë³´ì¸ì.
ì´ ì½ëë í¨ì를 í¸ì¶íëë°, ì¦ì ì¤íëê² í©ëë¤. ì½ë를 ì ì¥íê³ ë¸ë¼ì°ì ìì ìë¡ê³ 침íì ë, ìì ë©ìì§ ë°ì¤ê° ë¨ í ë², ì¦ì ëíëë ê²ì ë³¼ ì ìì ê²ì ëë¤. ì´ì¨ë ì°ë¦¬ë ì´ í¨ì를 ì¤ì§ í ë² í¸ì¶íì¼ëê¹ì.
ì´ì ìì íì´ì§ìì ë¸ë¼ì°ì ê°ë°ì ë구를 ì´ê³ , JavaScript ì½ìë¡ ê°ì ì´ ì½ë를 ë¤ì ì ë ¥í´ ë³´ë©´, ë©ìì§ ë°ì¤ê° ë¤ì ëíëë ê²ì ë³¼ ì ìì ê²ì ëë¤! ì´ê²ì ì¬ë¯¸ììµëë¤ â ì´ì ì°ë¦¬ë ì°ë¦¬ê° ìí ë ì¸ì ë ì§ í¸ì¶í ì ìë ì¬ì¬ì© ê°ë¥í í¨ì를 ê°ì§ê³ ìë ê²ì ëë¤.
íì§ë§ ì°ë¦¬ë ì´ í¨ìê° ì ì ì ìì¤í ìëì ìëµíì¬ ëíë기를 ìí©ëë¤. ì¤ì ì´í리ì¼ì´ì ììë, ê·¸ë¬í ë©ìì§ ë°ì¤ë ìë§ë ì´ì© ê°ë¥í ìë¡ì´ ë°ì´í°ë, ë°ìí ìë¬ë, íë¡íì ì§ì°ë ¤ë ì ì ë ("ì ë§ë¡ ì§ì°ìê² ìµëê¹?"), ìë¡ì´ ì°ë½ì²ë¥¼ ì¶ê°í ì ì ê·¸ë¦¬ê³ ì±ê³µì ì¼ë¡ ìë£ë ìë ë±ì ìëµíì¬ í¸ì¶ë ê²ì ëë¤.
ì´ ìì ììë, ì°ë¦¬ë ì ì ê° ë²í¼ì í´ë¦íì ë ë©ìì§ ë°ì¤ê° ëíëê² í ê²ì ëë¤.
ì¶ê°í ë§ì§ë§ ì¤ì ì§ì°ì¸ì.
ë¤ìì¼ë¡, ì°ë¦¬ë ë²í¼ì ì ííê³ ììì ì´ê²ì ëí 참조를 ì ì¥í ê²ì ëë¤. í¨ì ì ì ìì, ë¤ìì ì½ëì ì¶ê°í´ ë³´ì¸ì:
const btn = document.querySelector("button");
ë§ì§ë§ì¼ë¡, ë¤ìì ì§ë ì½ë ìëì ì¶ê°í´ ë³´ì¸ì:
btn.onclick = displayMessage;
í¨ì ë´ë¶ì closeBtn.onclick...
ì½ëì ë¹ì·í ë°©ìì¼ë¡, ì¬ê¸°ì ì°ë¦¬ë í´ë¦ë ë²í¼ì ìëµíì¬ ëªëª ì½ë를 í¸ì¶íê³ ììµëë¤. íì§ë§ ì´ ê²½ì°, ì½ë를 í¬í¨íë ìµëª
í¨ì를 í¸ì¶íë ëì , ì°ë¦¬ë í¨ìëª
ì ì§ì í¸ì¶íê³ ììµëë¤.
ì ì¥íê³ íì´ì§ë¥¼ ìë¡ê³ ì¹¨í´ ë³´ì¸ì â ì´ì ì¬ë¬ë¶ì´ ë²í¼ì í´ë¦íì ë ë©ìì§ ë°ì¤ê° ëíëë ê²ì ë³¼ ì ìì ê²ì ëë¤.
ì í¨ìëª ë¤ì ê´í¸ë¥¼ í¬í¨íì§ ììëì§ ê¶ê¸í ì§ë ëª¨ë¦ ëë¤. ê·¸ ì´ì ë í¨ì를 ì¦ì í¸ì¶íê³ ì¶ì§ ìì기 ë문ì ëë¤ â ì¤ì§ ë²í¼ì´ í´ë¦ë ì´íìë§ í¸ì¶ë기를 ìíìµëë¤. ë§ì½ ì´ ì¤ì ë¤ìì¼ë¡ ë³ê²½íê³
btn.onclick = displayMessage();
ì ì¥í í ìë¡ê³ 침íë¤ë©´, ì¬ë¬ë¶ì ë©ìì§ ë°ì¤ê° ë²í¼ì´ í´ë¦ëì§ë ììëë° ëíëë ê²ì ë³´ê² ë ê²ì ëë¤. ì´ ë§¥ë½ììì ê´í¸ë ëëë¡ "í¨ì í¸ì¶ ì°ì°ì(function invocation operator)"ë¼ê³ ë¶ë¦½ëë¤. ì´ê²ì í¨ì를 íì¬ ì¤ì½íìì ì¦ì ì¤ííê³ ì¶ì ëë§ ì¬ì©ë©ëë¤. ê°ì 측면ìì, ìµëª í¨ì ë´ë¶ì ì½ëë ì¦ì ì¤íëì§ ìëë°, ì´ë ê·¸ê²ì´ í¨ì ì¤ì½í ë´ì ì기 ë문ì ëë¤.
ë§ì½ ë§ì§ë§ ì¤íì ìëí´ ë´¤ë¤ë©´, ìì¼ë¡ ê°ê¸° ì ì ë°ëì ì´ì ì¼ë¡ ëë리ì¸ì.
매ê°ë³ì를 ì¬ì©í´ í¨ì를 ë ë«ê² ë§ë¤ê¸°íì¬ë¡ì¨ë, í¨ìë ì¬ì í ì ì©íì§ ììµëë¤ â ì°ë¦¬ë ê°ì 기본 ë©ìì§ë¥¼ ë§¤ë² ë³´ì´ê² íê³ ì¶ì§ ììµëë¤. í¨ì를 ë¤ë¥¸ ìµì ì¼ë¡ í¸ì¶í ì ìê² í´ ì£¼ë 매ê°ë³ì를 ì¶ê°í´ì ì°ë¦¬ì í¨ì를 ë ë«ê² ë§ë¤ì´ ë´ ìë¤.
ì°ì , í¨ìì 첫 ë²ì§¸ ì¤ì
function displayMessage() {
ì´ê²ì¼ë¡ ì ë°ì´í¸íì¸ì:
function displayMessage(msgText, msgType) {
ì´ì í¨ì를 í¸ì¶í ë, ì°ë¦¬ë ë©ìì§ ë°ì¤ì íìí ë©ìì§ì, ë©ìì§ì íì ì ëíë´ê¸° ìí´ ê´í¸ ìì ë ê°ì ë³ì ê°ì ì ê³µí ì ììµëë¤.
첫ë²ì§¸ 매ê°ë³ì를 ì¬ì©í기 ìí´, í¨ì ìì ë¤ìì ì¤ì
msg.textContent = "This is a message box";
ë¤ìì¼ë¡ ì ë°ì´í¸íì¸ì:
msg.textContent = msgText;
ë§ì§ë§ì¼ë¡ ëí ì¤ìí ê²ì, ì ë°ì´í¸ë ë©ìì§ í ì¤í¸ë¥¼ í¬í¨ìí¤ê¸° ìí´ ì´ì í¨ì í¸ì¶ì ë°ê¿ íìê° ìë¤ë ê²ì ëë¤. ë¤ìì ì¤ì
btn.onclick = displayMessage;
ì´ ë¸ë¡ì¼ë¡ ë°ê¾¸ì¸ì:
btn.onclick = function () {
displayMessage("Woo, this is a different message!");
};
ë§ì½ í¸ì¶í í¨ìì ê´í¸ ë´ë¶ì 매ê°ë³ì를 ë£ê¸° ìíë¤ë©´, í¨ìë ì§ì í¸ì¶ë ì ììµëë¤ â ëì , í¨ì를 ìµëª í¨ì ìì ë£ì´ í¨ìê° ì¦ê°ì ì¸ ì¤ì½í(immediate scope) ë´ì ìì§ ìê² íì¬ ì¦ì í¸ì¶ëì§ ìê² í ì ììµëë¤. ì´ì í¨ìë ë²í¼ì´ í´ë¦ë기 ì ê¹ì§ë í¸ì¶ëì§ ìì ê²ì ëë¤.
ìë¡ê³ 침íê³ ë¤ì ìëí´ ë³´ë©´, ì¬ì í ì주 ì ìëí ë¿ë§ ìëë¼ ë°ì¤ ìì ë¤ë¥¸ ë©ìì§ë¤ì´ íìë ì ìê² ë§¤ê°ë³ìì ë³í를 ì¤ ì ìë¤ë ê² ëí íì¸í ì ìì ê²ì ëë¤.
ë¤ì 매ê°ë³ìë¡ ê° ë´
ìë¤. ì´ê²ì ì½ê°ì ìê³ ë¥¼ ë íìë¡ í©ëë¤ â ì°ë¦¬ë ì´ê²ì ì¤ì íì¬ msgType
매ê°ë³ìê° ë¬´ìì¼ë¡ ì¤ì ëì´ ìëì§ì ë°ë¼, í¨ìê° ë¤ë¥¸ ìì´ì½ê³¼ ë¤ë¥¸ ë°°ê²½ìì íìíëë¡ í ê²ì
ëë¤.
ì°ì , ì´ ìì 를 ìí´ íìí ìì´ì½ë¤ì GitHubìì ë¤ì´ë¡ëíì¸ì (ê²½ê³ ê·¸ë¦¬ê³ ì±í
). ì´ê²ë¤ì HTMLíì¼ê³¼ ê°ì ìì¹ì ìë icons
ë¼ë ìë¡ì´ í´ëì ì ì¥íì¸ì.
ì°¸ê³ : ê²½ê³ ì ì±í ìì´ì½ì ìë iconfinder.comìì ì°¾ìì¡ê³ , Nazarrudin Ansyariê° ëìì¸íìµëë¤ â ê°ì¬í©ëë¤! (ì¤ì ìì´ì½ íì´ì§ë ì´ì ì ì´ëëê±°ë ìì ëììµëë¤.)
ë¤ìì¼ë¡, HTML íì¼ ë´ë¶ìì CSS를 ì°¾ì¼ì¸ì. ì°ë¦¬ë ìì´ì½ì´ ë¤ì´ê° ì리를 ë§ë¤ê¸° ìí´ ì½ê°ì ë³ê²½ì ê°í ê²ì
ëë¤. ì°ì , .msgBox
íì
ë¤ìì¼ë¡ ì ë°ì´í¸íì¸ì:
ë¤ìì¼ë¡, .msgBox p { ... }
ê·ì¹ ë´ë¶ì ë¤ìì ì¶ê°íì¸ì:
padding-left: 82px;
background-position: 25px center;
background-repeat: no-repeat;
ì´ì ì°ë¦¬ë ìì´ì½ íì를 ì²ë¦¬í기 ìí´ displayMessage()
í¨ìì ì½ë를 ì¶ê°í´ì¼ í©ëë¤. ë¤ìì ë¸ë¡ì í¨ìì ë«ë ì¤ê´í¸ (}
) ë°ë¡ ìì ì¶ê°íì¸ì:
if (msgType === "warning") {
msg.style.backgroundImage = "url(icons/warning.png)";
panel.style.backgroundColor = "red";
} else if (msgType === "chat") {
msg.style.backgroundImage = "url(icons/chat.png)";
panel.style.backgroundColor = "aqua";
} else {
msg.style.paddingLeft = "20px";
}
ì¬ê¸°ì, ë§ì½ msgType
매ê°ë³ìê° 'warning'
ì¼ë¡ ì¤ì ëì´ ìë¤ë©´, ê²½ê³ ìì´ì½ì´ íìë ê²ì´ê³ í¨ëì ë°°ê²½ìì´ ë¹¨ê°ì¼ë¡ ì¤ì ë ê²ì
ëë¤. ë§ì½ ì´ê²ì´ 'chat'
ì¼ë¡ ì¤ì ëì´ ìë¤ë©´, ì±í
ìì´ì½ì´ íìëê³ í¨ëì ë°°ê²½ìì´ ì°í íëì¼ë¡ ì¤ì ë ê²ì
ëë¤. ë§ì½ msgType
매ê°ë³ìê° ì í ì¤ì ëì´ ìì§ ìë¤ë©´ (í¹ì 무ì¸ê° ë¤ë¥¸ ê²ì¼ë¡ ì¤ì ëì´ ìë¤ë©´), ì½ëì else { ... }
ë¶ë¶ì´ ìëíê³ , 문ë¨ì ë¨ìí 기본 í¨ë©ì´ ì ì©ëê³ ìì´ì½ê³¼ í¨ë ë°°ê²½ì ìì´ ë³´ì¬ì§ ê²ì
ëë¤. ì¦ msgType
매ê°ë³ìê° ì ê³µëì§ ìì¼ë©´ 기본 ìíê° íìëëë°, ì´ë ì´ ë§¤ê°ë³ìê° ì íì ì¸ ë§¤ê°ë³ìë¼ë ê²ì ì미í©ëë¤!
ì
ë°ì´í¸ë í¨ì를 ìíí´ ë´
ìë¤. displayMessage()
í¸ì¶ì
displayMessage("Woo, this is a different message!");
ì´ê²ë¤ ì¤ íëë¡ ì ë°ì´í¸í´ ë´ ìë¤:
displayMessage("Your inbox is almost full â delete some mails", "warning");
displayMessage("Brian: Hi there, how are you today?", "chat");
ì°ë¦¬ì ìì (ì´ì ê·¸ë ê² ìì§ë ìì) í¨ìê° ì¼ë§ë ì ì©í´ì¡ëì§ ë³¼ ì ììµëë¤.
ì°¸ê³ : ë§ì½ ì´ ìì 를 ìì íë ë° ì´ë ¤ìì´ ìë¤ë©´, ìì ë¡ê² GitHubì ìë ìì±ë ë²ì ê³¼ ë¹êµí´ ë³´ê±°ë (ì¤ì ë¡ ìëíë 모ìµë ë³´ì¸ì), ì°ë¦¬ìê² ëìì ìì²í´ ë³´ì¸ì.
ì¤ë ¥ì íê°í´ ë³´ì¸ì!ì´ ë¬¸ì를 ëê¹ì§ ì½ì¼ì ¨ì§ë§, ì¤ìí ê²ë¤ì ì¬ì í 기ìµíê³ ê³ì ê°ì? ë¤ì 문ì를 ì½ê¸° ì ì ì´ ë¬¸ìì ë´ì©ì ì íìµíê³ ì´í´íì ¨ëì§ íì¸íì¤ ì ììµëë¤ â ì¤ë ¥ì íê°í´ ë³´ì¸ì: í¨ì. ì´ íê°ë¤ì ë¤ì 문ììì ë¤ë¤ì§ë 기ì ë¤ì ì구íë¯ë¡, íê°ë¥¼ ìëí´ë³´ê¸° ì ì ë¤ì 문ì를 먼ì ì½ì ìë ììµëë¤.
ê²°ë¡ëì ëë¬íì ê²ì ì¶íë립ëë¤! ì´ ë¬¸ìë ì¬ë¬ë¶ì´ ì¤ì©ì ì¸ ì¬ì©ì ì ì í¨ì를 ë§ë¤ì´ë³´ë ì ì²´ ê³¼ì ì ìµíëë¡ íëë°, ì´ë ì¡°ê¸ì ì¶ê°ì ì¸ ìì ê³¼ í¨ê» ì¤ì íë¡ì í¸ë¡ ì´ìë ìë ììµëë¤. ë¤ì 문ììì ì°ë¦¬ë ë ë¤ë¥¸ ê´ë ¨ë íìì ì¸ ê°ë â ë°í ê°ì ì¤ëª í¨ì¼ë¡ì¨ í¨ì를 ë§ë¬´ë¦¬ì§ì ê²ì ëë¤.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4