{"id":23173,"date":"2018-11-14T16:15:55","date_gmt":"2018-11-14T14:15:55","guid":{"rendered":"http:\/\/www.webcodegeeks.com\/?p=23173"},"modified":"2018-11-14T15:12:33","modified_gmt":"2018-11-14T13:12:33","slug":"javascript-events-tutorial","status":"publish","type":"post","link":"https:\/\/www.webcodegeeks.com\/javascript\/javascript-events-tutorial\/","title":{"rendered":"JavaScript Events Tutorial"},"content":{"rendered":"<p>Greetings readers, in this tutorial, we will show how to use the JavaScript Events.<\/p>\n<h2><a name=\"introduction\"><\/a>1. Introduction<\/h2>\n<p><strong>JavaScript<\/strong> is an object-oriented programming language that allows the <em>client-side scripting<\/em> to interact with a user and deliver the dynamic pages. Most web browsers including Google Chrome, Mozilla Firefox, Safari, Internet Explorer, Microsoft Edge, Opera, etc. support it. The JavaScript scripting language includes:<\/p>\n<ul>\n<li>Declaring variables<\/li>\n<li>Maintaining the retrieving values<\/li>\n<li>Defining and invoking functions<\/li>\n<li>Defining classes<\/li>\n<li>Load and use external modules<\/li>\n<li>Define event handlers<\/li>\n<li>And much more \u2026.<\/li>\n<\/ul>\n<p>[ulp id=&#8217;tCIwOngQUb3zSUuF&#8217;]<\/p>\n<div class=\"toc\">\n<h3>Table Of Contents<\/h3>\n<dl>\n<dt><a href=\"#introduction\">1. Introduction<\/a><\/dt>\n<dd>\n<dl>\n<dt><a href=\"#pros\">1.1 Advantages of JavaScript Language<\/a><\/dt>\n<dt><a href=\"#cons\">1.2 Disadvantages of JavaScript Language<\/a><\/dt>\n<dt><a href=\"#events\">1.3 Events in JavaScript<\/a><\/dt>\n<\/dl>\n<\/dd>\n<dt><a href=\"#eventsTutorial\">2. JavaScript Events Tutorial<\/a><\/dt>\n<dd>\n<dl>\n<dt><a href=\"#tools\">2.1 Tools Used<\/a><\/dt>\n<dt><a href=\"#projectstructure\">2.2 Project Structure<\/a><\/dt>\n<dt><a href=\"#projectcreation\">2.3 Project Creation<\/a><\/dt>\n<\/dl>\n<\/dd>\n<dt><a href=\"#application\">3. Application Building <\/a><\/dt>\n<dd>\n<dl>\n<dt><a href=\"#html\">3.1 Define the HTML<\/a><\/dt>\n<dt><a href=\"#javascriptfunction\">3.2 Define the JavaScript function<\/a><\/dt>\n<dt><a href=\"#firstapplication\">3.3 First application<\/a><\/dt>\n<\/dl>\n<\/dd>\n<dt><a href=\"#runtheapplication\">4. Run the Application<\/a><\/dt>\n<dt><a href=\"#demo\">5. Project Demo<\/a><\/dt>\n<dt><a href=\"#conclusion\">6. Conclusion<\/a><\/dt>\n<dt><a href=\"#projectDownload\">7. Download the Eclipse Project<\/a><\/dt>\n<\/dl>\n<\/div>\n<h3><a name=\"pros\"><\/a>1.1 Advantages of JavaScript Language<\/h3>\n<p>The pros of using the JavaScript scripting language are:<\/p>\n<ul>\n<li>JavaScript is easy to learn<\/li>\n<li>It executes on client&#8217;s browser, so eliminates the server-side processing and be executed on any OS<\/li>\n<li>JavaScript can be used with any type of web page e.g. PHP, ASP.NET, Perl etc<\/li>\n<li>Web-page performance increases due to client-side execution<\/li>\n<li>JavaScript code can be minified to decrease the loading time from the server<\/li>\n<li>Many JavaScript-based application frameworks are available in the market to create Single page web applications e.g. AngularJS, ReactJS etc.<\/li>\n<\/ul>\n<h3><a name=\"cons\"><\/a>1.2 Disadvantages of JavaScript Language<\/h3>\n<p>The cons of using the JavaScript scripting language are:<\/p>\n<ul>\n<li>No support for networking applications<\/li>\n<li>Does not have any multi-threading or multi-processing capabilities<\/li>\n<li>Does not allow the file reading and writing capabilities<\/li>\n<\/ul>\n<h2><a name=\"events\"><\/a>1.3 Events in JavaScript<\/h2>\n<ul>\n<li>An event is a signal from the browser that something has happened or something that a user does.<\/li>\n<li>For e.g.:\n<ul>\n<li>A webpage or an image has finished loading<\/li>\n<li>An input field is changed<\/li>\n<li>A button is clicked<\/li>\n<li>Move the cursor over an HTML element<\/li>\n<li>Submitting an HTML form<\/li>\n<li>Keystrokes<\/li>\n<\/ul>\n<\/li>\n<li>Javascript language provides several ways to connect an event handler to an event. These ways are:\n<ul>\n<li>Using HTML tag attributes<\/li>\n<li>Using DOM object property<\/li>\n<li>Using special methods such as <code>addeventlistener()<\/code><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h3>1.3.1 Common Events in JavaScript<\/h3>\n<p>There are sufficient javascript events available to make a webpage dynamic and clean. Here is the list of most common and popular javascript event handlers.<\/p>\n<table>\n<thead>\n<tr>\n<th style=\"text-align: center;\"><strong>Method<\/strong><\/th>\n<th style=\"text-align: center;\"><strong>Description<\/strong><\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td style=\"text-align: center;\"><code>onchange<\/code><\/td>\n<td>Occurs when an HTML element is changed<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center;\"><code>onclick<\/code><\/td>\n<td>Occurs when the user clicks on an HTML element<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center;\"><code>onmouseover<\/code><\/td>\n<td>Occurs when the user moves the mouse cursor over an HTML element<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center;\"><code>onmouseout<\/code><\/td>\n<td>Occurs when the user moves the mouse cursor away from an HTML element<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center;\"><code>onkeydown<\/code><\/td>\n<td>Occurs when the user pushes a keyboard key<\/td>\n<\/tr>\n<tr>\n<td style=\"text-align: center;\"><code>onload<\/code><\/td>\n<td>Occurs when the current web page has finished loading<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2><a name=\"eventsTutorial\"><\/a>2. JavaScript Events Tutorial<\/h2>\n<p>Here is a systematic guide for implementing this tutorial using the JavaScript language.<\/p>\n<h3><a name=\"tools\"><\/a>2.1 Tools Used<\/h3>\n<p>We are using Eclipse Kepler SR2, JDK 8 and Maven. Having said that, we have tested the code against JDK 1.7 and it works well.<\/p>\n<h3><a name=\"projectstructure\"><\/a>2.2 Project Structure<\/h3>\n<p>Firstly, let us review the final project structure if you are confused about where you should create the corresponding files or folder later!<\/p>\n<figure id=\"attachment_23174\" aria-describedby=\"caption-attachment-23174\" style=\"width: 340px\" class=\"wp-caption aligncenter\"><a href=\"http:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2018\/11\/structure-img1-1.jpg\"><img decoding=\"async\" class=\"wp-image-23174 size-full\" src=\"http:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2018\/11\/structure-img1-1.jpg\" alt=\"JavaScript Events - Application Project Structure\" width=\"340\" height=\"269\" srcset=\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2018\/11\/structure-img1-1.jpg 340w, https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2018\/11\/structure-img1-1-300x237.jpg 300w\" sizes=\"(max-width: 340px) 100vw, 340px\" \/><\/a><figcaption id=\"caption-attachment-23174\" class=\"wp-caption-text\">Fig. 1: Application Project Structure<\/figcaption><\/figure>\n<h3><a name=\"projectcreation\"><\/a>2.3 Project Creation<\/h3>\n<p>This section will show on how to create a Java-based Maven project with Eclipse. In Eclipse Ide, go to <code>File -&gt; New -&gt; Maven Project<\/code>.<\/p>\n<figure id=\"attachment_23175\" aria-describedby=\"caption-attachment-23175\" style=\"width: 657px\" class=\"wp-caption aligncenter\"><a href=\"http:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2018\/11\/js_event_project_guide_1.jpg\"><img decoding=\"async\" class=\"wp-image-23175 size-full\" src=\"http:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2018\/11\/js_event_project_guide_1.jpg\" alt=\"JavaScript Events - Create a Maven Project\" width=\"657\" height=\"690\" srcset=\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2018\/11\/js_event_project_guide_1.jpg 657w, https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2018\/11\/js_event_project_guide_1-286x300.jpg 286w\" sizes=\"(max-width: 657px) 100vw, 657px\" \/><\/a><figcaption id=\"caption-attachment-23175\" class=\"wp-caption-text\">Fig. 2: Create a Maven Project<\/figcaption><\/figure>\n<p>In the New Maven Project window, it will ask you to select the project location. By default, &#8216;Use default workspace location&#8217; will be selected. Just click on the next button to proceed.<\/p>\n<figure id=\"attachment_23176\" aria-describedby=\"caption-attachment-23176\" style=\"width: 598px\" class=\"wp-caption aligncenter\"><a href=\"http:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2018\/11\/js_event_project_guide_2.jpg\"><img decoding=\"async\" class=\"wp-image-23176 size-full\" src=\"http:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2018\/11\/js_event_project_guide_2.jpg\" alt=\"JavaScript Events - Project Details\" width=\"598\" height=\"543\" srcset=\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2018\/11\/js_event_project_guide_2.jpg 598w, https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2018\/11\/js_event_project_guide_2-300x272.jpg 300w\" sizes=\"(max-width: 598px) 100vw, 598px\" \/><\/a><figcaption id=\"caption-attachment-23176\" class=\"wp-caption-text\">Fig. 3: Project Details<\/figcaption><\/figure>\n<p>Select the &#8216;Maven Web App&#8217; Archetype from the list of options and click next.<\/p>\n<figure id=\"attachment_23177\" aria-describedby=\"caption-attachment-23177\" style=\"width: 515px\" class=\"wp-caption aligncenter\"><a href=\"http:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2018\/11\/js_event_project_guide_3.jpg\"><img decoding=\"async\" class=\"wp-image-23177 size-full\" src=\"http:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2018\/11\/js_event_project_guide_3.jpg\" alt=\"JavaScript Events - Archetype Selection\" width=\"515\" height=\"541\" srcset=\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2018\/11\/js_event_project_guide_3.jpg 515w, https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2018\/11\/js_event_project_guide_3-286x300.jpg 286w\" sizes=\"(max-width: 515px) 100vw, 515px\" \/><\/a><figcaption id=\"caption-attachment-23177\" class=\"wp-caption-text\">Fig. 4: Archetype Selection<\/figcaption><\/figure>\n<p>It will ask you to &#8216;Enter the group and the artifact id for the project&#8217;. We will input the details as shown in the below image. The version number will be by default: <code>0.0.1-SNAPSHOT<\/code>.<\/p>\n<figure id=\"attachment_23178\" aria-describedby=\"caption-attachment-23178\" style=\"width: 577px\" class=\"wp-caption aligncenter\"><a href=\"http:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2018\/11\/js_event_project_guide_4.jpg\"><img decoding=\"async\" class=\"wp-image-23178 size-full\" src=\"http:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2018\/11\/js_event_project_guide_4.jpg\" alt=\"JavaScript Events - Archetype Parameters\" width=\"577\" height=\"536\" srcset=\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2018\/11\/js_event_project_guide_4.jpg 577w, https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2018\/11\/js_event_project_guide_4-300x279.jpg 300w\" sizes=\"(max-width: 577px) 100vw, 577px\" \/><\/a><figcaption id=\"caption-attachment-23178\" class=\"wp-caption-text\">Fig. 5: Archetype Parameters<\/figcaption><\/figure>\n<p>Click on Finish and the creation of a maven project is completed. If you see, it has downloaded the maven dependencies and a <code>pom.xml<\/code> file will be created. It will have the following code:<\/p>\n<p><span style=\"text-decoration: underline;\"><em>pom.xml<\/em><\/span><\/p>\n<pre class=\"brush:xml; wrap-lines:false;\">&lt;project xmlns=\"http:\/\/maven.apache.org\/POM\/4.0.0\" xmlns:xsi=\"http:\/\/www.w3.org\/2001\/XMLSchema-instance\" xsi:schemaLocation=\"http:\/\/maven.apache.org\/POM\/4.0.0 http:\/\/maven.apache.org\/xsd\/maven-4.0.0.xsd\"&gt;\r\n\t&lt;modelVersion&gt;4.0.0&lt;\/modelVersion&gt;\r\n\t&lt;groupId&gt;com.javascript&lt;\/groupId&gt;\r\n\t&lt;artifactId&gt;JavaScriptEvents&lt;\/artifactId&gt;\r\n\t&lt;version&gt;0.0.1-SNAPSHOT&lt;\/version&gt;\r\n\t&lt;packaging&gt;war&lt;\/packaging&gt;\r\n&lt;\/project&gt;\r\n<\/pre>\n<h2><a name=\"application\"><\/a>3. Application Building<\/h2>\n<p>Let us create an application to understand the basic building blocks of this tutorial.<\/p>\n<h3><a name=\"html\"><\/a>3.1 Define the HTML<\/h3>\n<p>Let us write a simple index page in the <code>JavaScriptEvents\/src\/main\/webapp\/<\/code> folder. Add the following code to it:<\/p>\n<p><span style=\"text-decoration: underline;\"><em>index.jsp<\/em><\/span><\/p>\n<pre class=\"brush:html; wrap-lines:false;\">&lt;!-- Javascript events tutorial --&gt;\r\n&lt;div class=\"form-group\"&gt;\r\n\t&lt;div id=\"event\"&gt;\r\n\t\t&lt;h4 class=\"text-primary font-weight-bold\"&gt;What is an event?&lt;\/h4&gt;\r\n\t\t&lt;ol class=\"text-info line-hgt\"&gt;\r\n\t\t\t&lt;li&gt;An event is a signal from the browser that something has happened or something that a user does&lt;\/li&gt;\r\n\t\t\t&lt;li&gt;For e.g.:\r\n\t\t\t\t&lt;ul&gt;\r\n\t\t\t\t\t&lt;li&gt;A webpage has finished loading&lt;\/li&gt;\r\n\t\t\t\t\t&lt;li&gt;An input field is changed&lt;\/li&gt;\r\n\t\t\t\t\t&lt;li&gt;A button is clicked&lt;\/li&gt;\r\n\t\t\t\t&lt;\/ul&gt;\r\n\t\t\t&lt;\/li&gt;\r\n\t\t\t&lt;li&gt;Javascript language provides several ways to connect an event handler to an event. These ways are:\r\n\t\t\t\t&lt;ul&gt;\r\n\t\t\t\t\t&lt;li&gt;Using HTML tag attributes&lt;\/li&gt;\r\n\t\t\t\t\t&lt;li&gt;Using DOM object property&lt;\/li&gt;\r\n\t\t\t\t\t&lt;li&gt;Using special methods such as &lt;code&gt;addeventlistener()&lt;\/code&gt;&lt;\/li&gt;\r\n\t\t\t\t&lt;\/ul&gt;\r\n\t\t\t&lt;\/li&gt;\r\n\t\t&lt;\/ol&gt;\r\n\t&lt;\/div&gt;\r\n\t&lt;!-- Input form --&gt;\r\n\t&lt;div id=\"code\"&gt;\r\n\t\t&lt;h4 class=\"text-sucess\"&gt;Code Snippet&lt;\/h4&gt;\r\n\t\t&lt;div&gt;\u00a0&lt;\/div&gt;\r\n\t\t&lt;div id=\"myform\"&gt;\r\n\t\t\t&lt;div class=\"form-group\"&gt;\r\n\t\t\t\t&lt;label for=\"name\"&gt;Name:&lt;\/label&gt;\r\n\t\t\t\t&lt;input type=\"text\" class=\"form-control\" id=\"name\" onblur=\"validate('name')\"&gt;\r\n\t\t\t&lt;\/div&gt;\r\n\t\t\t&lt;button id=\"btn_submit\" type=\"button\" class=\"btn btn-default\" onmouseover=\"mouseover();\" onmouseout=\"mouseout();\" onclick=\"submit();\"&gt;Submit&lt;\/button&gt;\r\n\t\t&lt;\/div&gt;\r\n\t&lt;\/div&gt;\r\n&lt;\/div&gt;\r\n&lt;div&gt;\u00a0&lt;\/div&gt;\r\n\r\n&lt;!-- Result --&gt;\r\n&lt;h5 id=\"result\" class=\"text-info\"&gt;&lt;\/h5&gt;\r\n<\/pre>\n<h3><a name=\"javascriptfunction\"><\/a>3.2 Define the JavaScript function<\/h3>\n<p>Let us write a simple javascript function that shows the <span style=\"text-decoration: underline;\">events<\/span> implementation in the javascript language. Add the following code to it:<\/p>\n<p><span style=\"text-decoration: underline;\"><em>JavaScript function<\/em><\/span><\/p>\n<pre class=\"brush:js; wrap-lines:false;\">\/\/ Mouseover function\r\nfunction mouseover() {\r\n\tvar mover = document.getElementById(\"btn_submit\");\r\n\tmover.style.background= 'blueviolet';\r\n\tmover.style.color= 'white';\r\n}\r\n\r\n\/\/ Mouseout function\r\nfunction mouseout() {\r\n\tvar mout = document.getElementById(\"btn_submit\");\r\n\tmout.style.background= 'gainsboro';\r\n\tmout.style.color= 'black';\r\n}\r\n\r\n\/\/ Blur function\r\nfunction validate(id) {\r\n\tvar input = document.getElementById(id);\r\n\tif (input.value == \"\") {\r\n\t\tinput.style.color= '#e52213';\r\n\t\tinput.style.border= 'solid';\r\n\t} else {\r\n\t\tinput.style.color= '#00ff99';\r\n\t\tinput.style.border= 'solid';\r\n\t}\r\n}\r\n\r\n\/\/ Form submit function\r\nfunction submit() {\r\n\talert(\"Form submitted.\");\r\n}\r\n<\/pre>\n<h3><a name=\"firstapplication\"><\/a>3.3 First application<\/h3>\n<p>Complete the above steps and save the file. Let us see the sample code snippet.<\/p>\n<p><span style=\"text-decoration: underline;\"><em>index.jsp<\/em><\/span><\/p>\n<pre class=\"brush: html; wrap-lines:false;\">&lt;!DOCTYPE html&gt;\r\n&lt;html lang=\"en\"&gt;\r\n\r\n&lt;head&gt;\r\n    &lt;title&gt;Index page&lt;\/title&gt;\r\n    &lt;meta http-equiv=\"Content-Type\" content=\"text\/html; charset=ISO-8859-1\"&gt;\r\n    &lt;link rel=\"stylesheet\" href=\"https:\/\/stackpath.bootstrapcdn.com\/bootstrap\/4.1.3\/css\/bootstrap.min.css\"&gt;\r\n    &lt;style&gt;\r\n        #event,\r\n        #code,\r\n        #result {\r\n            margin-left: 16px;\r\n        }\r\n        \r\n        .line-hgt {\r\n            line-height: 2.0;\r\n        }\r\n    &lt;\/style&gt;\r\n&lt;\/head&gt;\r\n\r\n&lt;body&gt;\r\n    &lt;div class=\"container\"&gt;\r\n        &lt;h2 align=\"center\" class=\"text-danger\"&gt;Events in JavaScript&lt;\/h2&gt;\r\n        &lt;hr \/&gt;\r\n\r\n        &lt;!-- Javascript events tutorial --&gt;\r\n        &lt;div class=\"form-group\"&gt;\r\n            &lt;div id=\"event\"&gt;\r\n                &lt;h4 class=\"text-primary font-weight-bold\"&gt;What is an event?&lt;\/h4&gt;\r\n                &lt;ol class=\"text-info line-hgt\"&gt;\r\n                    &lt;li&gt;An event is a signal from the browser that something has happened or something that a user does.&lt;\/li&gt;\r\n                    &lt;li&gt;For e.g.:\r\n                        &lt;ul&gt;\r\n                            &lt;li&gt;A webpage has finished loading&lt;\/li&gt;\r\n                            &lt;li&gt;An input field is changed&lt;\/li&gt;\r\n                            &lt;li&gt;A button is clicked&lt;\/li&gt;\r\n                        &lt;\/ul&gt;\r\n                    &lt;\/li&gt;\r\n                    &lt;li&gt;Javascript language provides several ways to connect an event handler to an event. These ways are:\r\n                        &lt;ul&gt;\r\n                            &lt;li&gt;Using HTML tag attributes&lt;\/li&gt;\r\n                            &lt;li&gt;Using DOM object property&lt;\/li&gt;\r\n                            &lt;li&gt;Using special methods such as &lt;code&gt;addeventlistener()&lt;\/code&gt;&lt;\/li&gt;\r\n                        &lt;\/ul&gt;\r\n                    &lt;\/li&gt;\r\n                &lt;\/ol&gt;\r\n            &lt;\/div&gt;\r\n            &lt;!-- Input form --&gt;\r\n            &lt;div id=\"code\"&gt;\r\n                &lt;h4 class=\"text-sucess\"&gt;Code Snippet&lt;\/h4&gt;\r\n                &lt;div&gt;\u00a0&lt;\/div&gt;\r\n                &lt;div id=\"myform\"&gt;\r\n                    &lt;div class=\"form-group\"&gt;\r\n                        &lt;label for=\"name\"&gt;Name:&lt;\/label&gt;\r\n                        &lt;input type=\"text\" class=\"form-control\" id=\"name\" onblur=\"validate('name')\"&gt;\r\n                    &lt;\/div&gt;\r\n                    &lt;button id=\"btn_submit\" type=\"button\" class=\"btn btn-default\" onmouseover=\"mouseover();\" onmouseout=\"mouseout();\" onclick=\"submit();\"&gt;Submit&lt;\/button&gt;\r\n                &lt;\/div&gt;\r\n            &lt;\/div&gt;\r\n        &lt;\/div&gt;\r\n        &lt;div&gt;\u00a0&lt;\/div&gt;\r\n\r\n        &lt;!-- Result --&gt;\r\n        &lt;h5 id=\"result\" class=\"text-info\"&gt;&lt;\/h5&gt;\r\n    &lt;\/div&gt;\r\n    &lt;script&gt;\r\n    \t\/\/ Mouseover function\r\n        function mouseover() {\r\n            var mover = document.getElementById(\"btn_submit\");\r\n            mover.style.background= 'blueviolet';\r\n            mover.style.color= 'white';\r\n        }\r\n\r\n     \t\/\/ Mouseout function\r\n        function mouseout() {\r\n            var mout = document.getElementById(\"btn_submit\");\r\n            mout.style.background= 'gainsboro';\r\n            mout.style.color= 'black';\r\n        }\r\n\r\n     \t\/\/ Blur function\r\n        function validate(id) {\r\n            var input = document.getElementById(id);\r\n            if (input.value == \"\") {\r\n                input.style.color= '#e52213';\r\n                input.style.border= 'solid';\r\n            } else {\r\n                input.style.color= '#00ff99';\r\n                input.style.border= 'solid';\r\n            }\r\n        }\r\n\r\n     \t\/\/ Form submit function\r\n        function submit() {\r\n            alert(\"Form submitted.\");\r\n        }\r\n    &lt;\/script&gt;\r\n&lt;\/body&gt;\r\n\r\n&lt;\/html&gt;\r\n<\/pre>\n<h2><a name=\"runtheapplication\"><\/a>4. Run the Application<\/h2>\n<p>As we are ready for all the changes, let us compile the project and deploy the application on the Tomcat7 server. To deploy the application on Tomat7, right-click on the project and navigate to <code>Run as -&gt; Run on Server<\/code>.<\/p>\n<figure id=\"attachment_23179\" aria-describedby=\"caption-attachment-23179\" style=\"width: 788px\" class=\"wp-caption aligncenter\"><a href=\"http:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2018\/11\/deploy-img1-1.jpg\"><img decoding=\"async\" class=\"wp-image-23179 size-full\" src=\"http:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2018\/11\/deploy-img1-1.jpg\" alt=\"JavaScript Events - Deploy Application on Tomcat\" width=\"788\" height=\"392\" srcset=\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2018\/11\/deploy-img1-1.jpg 788w, https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2018\/11\/deploy-img1-1-300x149.jpg 300w, https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2018\/11\/deploy-img1-1-768x382.jpg 768w\" sizes=\"(max-width: 788px) 100vw, 788px\" \/><\/a><figcaption id=\"caption-attachment-23179\" class=\"wp-caption-text\">Fig. 6: How to Deploy Application on Tomcat<\/figcaption><\/figure>\n<p>Tomcat will deploy the application in its web-apps folder and shall start its execution to deploy the project so that we can go ahead and test it in the browser.<\/p>\n<h2><a name=\"demo\"><\/a>5. Project Demo<\/h2>\n<p>Open your favorite browser and hit the following URL to display the application\u2019s index page as shown in Fig. 7.<\/p>\n<pre class=\"brush:plain; wrap-lines:false;\">http:\/\/localhost:8082\/JavaScriptEvents\/<\/pre>\n<p>Server name (localhost) and port (8082) may vary as per your Tomcat configuration.<\/p>\n<figure id=\"attachment_23180\" aria-describedby=\"caption-attachment-23180\" style=\"width: 817px\" class=\"wp-caption aligncenter\"><a href=\"http:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2018\/11\/demo-img1-3.jpg\"><img decoding=\"async\" class=\"wp-image-23180 size-full\" src=\"http:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2018\/11\/demo-img1-3.jpg\" alt=\"JavaScript Events - Index page\" width=\"817\" height=\"377\" srcset=\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2018\/11\/demo-img1-3.jpg 817w, https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2018\/11\/demo-img1-3-300x138.jpg 300w, https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2018\/11\/demo-img1-3-768x354.jpg 768w\" sizes=\"(max-width: 817px) 100vw, 817px\" \/><\/a><figcaption id=\"caption-attachment-23180\" class=\"wp-caption-text\">Fig. 7: Index page<\/figcaption><\/figure>\n<p>That is all for this tutorial and I hope the article served you whatever you were looking for. Happy Learning and do not forget to share!<\/p>\n<h2><a name=\"conclusion\"><\/a>6. Conclusion<\/h2>\n<p>In this section, developers learned how to create a simple application with the JavaScript language. Developers can download the sample application as an Eclipse project in the <a href=\"#projectDownload\">Downloads<\/a> section.<\/p>\n<h2><a name=\"projectDownload\"><\/a>7. Download the Eclipse Project<\/h2>\n<p>This was an example of JavaScript Events for beginners.<\/p>\n<div class=\"download\"><strong>Download<\/strong><br \/>\nYou can download the full source code of this example here: <a href=\"http:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2018\/11\/JavaScriptEvents.zip\" target=\"_blank\" rel=\"noopener\"><strong>JavaScriptEvents<\/strong><\/a><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Greetings readers, in this tutorial, we will show how to use the JavaScript Events. 1. Introduction JavaScript is an object-oriented programming language that allows the client-side scripting to interact with a user and deliver the dynamic pages. Most web browsers including Google Chrome, Mozilla Firefox, Safari, Internet Explorer, Microsoft Edge, Opera, etc. support it. The &hellip;<\/p>\n","protected":false},"author":2162,"featured_media":920,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[9],"tags":[82],"class_list":["post-23173","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-javascript","tag-javascript"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>JavaScript Events Tutorial - Web Code Geeks - 2026<\/title>\n<meta name=\"description\" content=\"Interested to learn more about JavaScript? Then check out our detailed example on JavaScript Events! Download our FREE JS Interview Questions &amp; Answers ebook!\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.webcodegeeks.com\/javascript\/javascript-events-tutorial\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"JavaScript Events Tutorial - Web Code Geeks - 2026\" \/>\n<meta property=\"og:description\" content=\"Interested to learn more about JavaScript? Then check out our detailed example on JavaScript Events! Download our FREE JS Interview Questions &amp; Answers ebook!\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.webcodegeeks.com\/javascript\/javascript-events-tutorial\/\" \/>\n<meta property=\"og:site_name\" content=\"Web Code Geeks\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/webcodegeeks\" \/>\n<meta property=\"article:published_time\" content=\"2018-11-14T14:15:55+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/js-logo.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"150\" \/>\n\t<meta property=\"og:image:height\" content=\"150\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Yatin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@webcodegeeks\" \/>\n<meta name=\"twitter:site\" content=\"@webcodegeeks\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Yatin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"10 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/javascript-events-tutorial\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/javascript-events-tutorial\/\"},\"author\":{\"name\":\"Yatin\",\"@id\":\"https:\/\/www.webcodegeeks.com\/#\/schema\/person\/6c946b8aea919fb2cd83fb17268e9367\"},\"headline\":\"JavaScript Events Tutorial\",\"datePublished\":\"2018-11-14T14:15:55+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/javascript-events-tutorial\/\"},\"wordCount\":976,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/javascript-events-tutorial\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/js-logo.jpg\",\"keywords\":[\"javascript\"],\"articleSection\":[\"JavaScript\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.webcodegeeks.com\/javascript\/javascript-events-tutorial\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/javascript-events-tutorial\/\",\"url\":\"https:\/\/www.webcodegeeks.com\/javascript\/javascript-events-tutorial\/\",\"name\":\"JavaScript Events Tutorial - Web Code Geeks - 2026\",\"isPartOf\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/javascript-events-tutorial\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/javascript-events-tutorial\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/js-logo.jpg\",\"datePublished\":\"2018-11-14T14:15:55+00:00\",\"description\":\"Interested to learn more about JavaScript? Then check out our detailed example on JavaScript Events! Download our FREE JS Interview Questions & Answers ebook!\",\"breadcrumb\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/javascript-events-tutorial\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.webcodegeeks.com\/javascript\/javascript-events-tutorial\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/javascript-events-tutorial\/#primaryimage\",\"url\":\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/js-logo.jpg\",\"contentUrl\":\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/js-logo.jpg\",\"width\":150,\"height\":150},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.webcodegeeks.com\/javascript\/javascript-events-tutorial\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.webcodegeeks.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"JavaScript\",\"item\":\"https:\/\/www.webcodegeeks.com\/category\/javascript\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"JavaScript Events Tutorial\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.webcodegeeks.com\/#website\",\"url\":\"https:\/\/www.webcodegeeks.com\/\",\"name\":\"Web Code Geeks\",\"description\":\"Web Developers Resource Center\",\"publisher\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.webcodegeeks.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.webcodegeeks.com\/#organization\",\"name\":\"Exelixis Media P.C.\",\"url\":\"https:\/\/www.webcodegeeks.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.webcodegeeks.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png\",\"contentUrl\":\"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png\",\"width\":864,\"height\":246,\"caption\":\"Exelixis Media P.C.\"},\"image\":{\"@id\":\"https:\/\/www.webcodegeeks.com\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/webcodegeeks\",\"https:\/\/x.com\/webcodegeeks\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.webcodegeeks.com\/#\/schema\/person\/6c946b8aea919fb2cd83fb17268e9367\",\"name\":\"Yatin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.webcodegeeks.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/3f011dd665043468ba193f7b07472ebbedfa359cff5e576a91a5901c130ca6f1?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/3f011dd665043468ba193f7b07472ebbedfa359cff5e576a91a5901c130ca6f1?s=96&d=mm&r=g\",\"caption\":\"Yatin\"},\"description\":\"The author is graduated in Electronics &amp; Telecommunication. During his studies, he has been involved with a significant number of projects ranging from programming and software engineering to telecommunications analysis. He works as a technical lead in the information technology sector where he is primarily involved with projects based on Java\/J2EE technologies platform and novel UI technologies.\",\"sameAs\":[\"https:\/\/www.webcodegeeks.com\"],\"url\":\"https:\/\/www.webcodegeeks.com\/author\/yatin-batra\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"JavaScript Events Tutorial - Web Code Geeks - 2026","description":"Interested to learn more about JavaScript? Then check out our detailed example on JavaScript Events! Download our FREE JS Interview Questions & Answers ebook!","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.webcodegeeks.com\/javascript\/javascript-events-tutorial\/","og_locale":"en_US","og_type":"article","og_title":"JavaScript Events Tutorial - Web Code Geeks - 2026","og_description":"Interested to learn more about JavaScript? Then check out our detailed example on JavaScript Events! Download our FREE JS Interview Questions & Answers ebook!","og_url":"https:\/\/www.webcodegeeks.com\/javascript\/javascript-events-tutorial\/","og_site_name":"Web Code Geeks","article_publisher":"https:\/\/www.facebook.com\/webcodegeeks","article_published_time":"2018-11-14T14:15:55+00:00","og_image":[{"width":150,"height":150,"url":"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/js-logo.jpg","type":"image\/jpeg"}],"author":"Yatin","twitter_card":"summary_large_image","twitter_creator":"@webcodegeeks","twitter_site":"@webcodegeeks","twitter_misc":{"Written by":"Yatin","Est. reading time":"10 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.webcodegeeks.com\/javascript\/javascript-events-tutorial\/#article","isPartOf":{"@id":"https:\/\/www.webcodegeeks.com\/javascript\/javascript-events-tutorial\/"},"author":{"name":"Yatin","@id":"https:\/\/www.webcodegeeks.com\/#\/schema\/person\/6c946b8aea919fb2cd83fb17268e9367"},"headline":"JavaScript Events Tutorial","datePublished":"2018-11-14T14:15:55+00:00","mainEntityOfPage":{"@id":"https:\/\/www.webcodegeeks.com\/javascript\/javascript-events-tutorial\/"},"wordCount":976,"commentCount":0,"publisher":{"@id":"https:\/\/www.webcodegeeks.com\/#organization"},"image":{"@id":"https:\/\/www.webcodegeeks.com\/javascript\/javascript-events-tutorial\/#primaryimage"},"thumbnailUrl":"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/js-logo.jpg","keywords":["javascript"],"articleSection":["JavaScript"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.webcodegeeks.com\/javascript\/javascript-events-tutorial\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.webcodegeeks.com\/javascript\/javascript-events-tutorial\/","url":"https:\/\/www.webcodegeeks.com\/javascript\/javascript-events-tutorial\/","name":"JavaScript Events Tutorial - Web Code Geeks - 2026","isPartOf":{"@id":"https:\/\/www.webcodegeeks.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.webcodegeeks.com\/javascript\/javascript-events-tutorial\/#primaryimage"},"image":{"@id":"https:\/\/www.webcodegeeks.com\/javascript\/javascript-events-tutorial\/#primaryimage"},"thumbnailUrl":"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/js-logo.jpg","datePublished":"2018-11-14T14:15:55+00:00","description":"Interested to learn more about JavaScript? Then check out our detailed example on JavaScript Events! Download our FREE JS Interview Questions & Answers ebook!","breadcrumb":{"@id":"https:\/\/www.webcodegeeks.com\/javascript\/javascript-events-tutorial\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.webcodegeeks.com\/javascript\/javascript-events-tutorial\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.webcodegeeks.com\/javascript\/javascript-events-tutorial\/#primaryimage","url":"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/js-logo.jpg","contentUrl":"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2014\/10\/js-logo.jpg","width":150,"height":150},{"@type":"BreadcrumbList","@id":"https:\/\/www.webcodegeeks.com\/javascript\/javascript-events-tutorial\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.webcodegeeks.com\/"},{"@type":"ListItem","position":2,"name":"JavaScript","item":"https:\/\/www.webcodegeeks.com\/category\/javascript\/"},{"@type":"ListItem","position":3,"name":"JavaScript Events Tutorial"}]},{"@type":"WebSite","@id":"https:\/\/www.webcodegeeks.com\/#website","url":"https:\/\/www.webcodegeeks.com\/","name":"Web Code Geeks","description":"Web Developers Resource Center","publisher":{"@id":"https:\/\/www.webcodegeeks.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.webcodegeeks.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.webcodegeeks.com\/#organization","name":"Exelixis Media P.C.","url":"https:\/\/www.webcodegeeks.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.webcodegeeks.com\/#\/schema\/logo\/image\/","url":"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png","contentUrl":"https:\/\/www.webcodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png","width":864,"height":246,"caption":"Exelixis Media P.C."},"image":{"@id":"https:\/\/www.webcodegeeks.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/webcodegeeks","https:\/\/x.com\/webcodegeeks"]},{"@type":"Person","@id":"https:\/\/www.webcodegeeks.com\/#\/schema\/person\/6c946b8aea919fb2cd83fb17268e9367","name":"Yatin","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.webcodegeeks.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/3f011dd665043468ba193f7b07472ebbedfa359cff5e576a91a5901c130ca6f1?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/3f011dd665043468ba193f7b07472ebbedfa359cff5e576a91a5901c130ca6f1?s=96&d=mm&r=g","caption":"Yatin"},"description":"The author is graduated in Electronics &amp; Telecommunication. During his studies, he has been involved with a significant number of projects ranging from programming and software engineering to telecommunications analysis. He works as a technical lead in the information technology sector where he is primarily involved with projects based on Java\/J2EE technologies platform and novel UI technologies.","sameAs":["https:\/\/www.webcodegeeks.com"],"url":"https:\/\/www.webcodegeeks.com\/author\/yatin-batra\/"}]}},"_links":{"self":[{"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/posts\/23173","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/users\/2162"}],"replies":[{"embeddable":true,"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/comments?post=23173"}],"version-history":[{"count":0,"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/posts\/23173\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/media\/920"}],"wp:attachment":[{"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/media?parent=23173"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/categories?post=23173"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.webcodegeeks.com\/wp-json\/wp\/v2\/tags?post=23173"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}