Modul Pemrograman Web - E

advertisement
1
Modul Pemrograman Web
Arif Dwi Laksito. S.Kom
Table of Contents
1
2
Konsep Dasar Web .............................................................................................................................. 3
1.1
Hypertext .................................................................................................................................... 3
1.2
HTTP ............................................................................................................................................ 3
Sejarah Internet .................................................................................................................................. 3
2.1
Tiga teknologi penting yang menyebabkan internet bisa berkembang seperti saat ini : ............ 4
2.2
Perkembangan Internet dikelompokkan dalam 4 periode perkembangan, yaitu : ..................... 4
2.3
Perkembangan Internet di indonesia .......................................................................................... 4
2.4
Manfaat Internet:........................................................................................................................ 5
2.5
Penyalahgunaan/Kejahatan Internet .......................................................................................... 5
3
PERKEMBANGAN WEB ........................................................................................................................ 5
4
HTML................................................................................................................................................... 7
5
4.1
HTML Element ............................................................................................................................. 8
4.2
HTML Text Formatting ................................................................................................................ 9
4.3
HTML Tabel ................................................................................................................................. 9
4.4
HTML List .................................................................................................................................. 10
4.5
HTML Form ............................................................................................................................... 11
CSS (Cascade Style Sheet) ................................................................................................................. 12
5.1
Inline Style................................................................................................................................. 13
5.2
Embedded Style Sheets ............................................................................................................. 13
5.3
External Style Sheets ................................................................................................................. 14
5.4
CSS Selector .............................................................................................................................. 14
5.4.1
Id Selector ......................................................................................................................... 14
5.4.2
Class Selector .................................................................................................................... 14
5.5
Contoh CSS ................................................................................................................................ 15
5.5.1
CSS Background ................................................................................................................. 15
5.5.2
CSS Table ........................................................................................................................... 16
2
6
Javascript .......................................................................................................................................... 18
6.1
6.1.1
Diletakkan di bagian Head ................................................................................................. 18
6.1.2
Penulisan pada bagian Body .............................................................................................. 18
6.1.3
Penulisan di External File................................................................................................... 19
6.2
Fungsi di Javascript.................................................................................................................... 19
6.2.1
Fungsi tanpa parameter .................................................................................................... 19
6.2.2
Fungsi dengan parameter ................................................................................................. 19
6.2.3
Fungsi yang mengembalikan nilai...................................................................................... 20
6.3
7
Penulisan Javascript .................................................................................................................. 18
Javascript Event......................................................................................................................... 20
HTM L DOM ...................................................................................................................................... 22
7.1
HTML DOM Properties .............................................................................................................. 23
7.2
HTML DOM Methods ................................................................................................................ 23
8
AJAX .................................................................................................................................................. 26
9
JQUERY.............................................................................................................................................. 28
9.1
9.1.1
.click() ................................................................................................................................ 29
9.1.2
.mouseover() ..................................................................................................................... 29
9.1.3
.mouseout()....................................................................................................................... 29
9.1.4
.focus() .............................................................................................................................. 30
9.1.5
.keyup() ............................................................................................................................. 30
9.2
10
Jquery Event .............................................................................................................................. 29
Jquery Effect ............................................................................................................................. 31
9.2.1
.fadeIn() ............................................................................................................................. 31
9.2.2
.fadeOut() .......................................................................................................................... 31
9.2.3
.toggle() ............................................................................................................................. 31
9.2.4
.fadeToggle() ..................................................................................................................... 32
9.2.5
.animate() .......................................................................................................................... 32
XML ............................................................................................................................................... 32
3 Konsep Dasar Web
1 KONSEP DASAR WEB
World Wide Web, Adalah suatu ruang informasi dimana sumber-sumber daya yang berguna
diidentifikasikan oleh pengenal global yang disebut Uniform Resource Identifier (URI).
URI, Terdiri dari string karakter yang digunakan untuk identifikasi atau memberi suatu nama
resource(sumberdaya) di Internet.
URL (Uniform Resource Locator), URL digunakan oleh browser untuk mengidentifikasi sumberdaya di
Internet yang dituliskan dalam satu baris teks. URL dapat dikatakan sebagai bagian dari URI. Ex.
http://www.amikom.ac.id/index.php
1.1 Hypertext
Suatu informasi yang dapat kita baca melaui Web Browser(IE, Firefox, Chrome, Opera, dll)
Kita dapat mengikuti link di setiap halaman untuk pindah ke dokumen lain atau bahkan mengirim
informasi kembali kepada server untuk berinteraksi.
Aktifitas tsb disebut Surfing(berselancar). Halaman web biasanya diatur dalam koleksi material yang
saling terkait, yang disebut Website
1.2 HTTP
Adalah standard request/response antara sebuah client dan server.
Client(web browser) akan mulai melakukan permintaan(request) ke server. Server tersebut akan
menerima request dari client dan akan mengembalikan jawaban(response) ke client yang dapat berupa
pesan error atau informasi lainnya.
2 SEJARAH INTERNET
Internet adalah jaringan komunikasi global yang terbuka dan menghubungkan jutaan jaringan komputer,
melalui sambungan telepon umum maupun pribadi. Secara individu, jaringan komponennya dikelola
oleh agen-agen pemerintah, universitas, organisasi komersial, maupun sukarelawan, Menurut McBride
dlm bukunya, The Internet. Secara harfiah, Internet (kependekan dari interconnected-networking) ialah
sistem global dari seluruh jaringan komputer yang saling terhubung menggunakan standar Internet
Protocol Suite (TCP/IP) untuk melayani miliaran pengguna di seluruh dunia. Cara menghubungkan
rangkaian dengan kaedah ini dinamakan internetworking, Menurut Wikipedia Indonesia.
4 Sejarah Internet
2.1 Pengguna Internet Dunia
2.2 Pengguna Internet Asia
2.1 Tiga teknologi penting yang menyebabkan internet bisa berkembang
seperti saat ini :
 Teknologi Paket Switching (60-an)
 Protokol TCP/IP (awal 80-an)
 Standar HTML (awal 90-an)
2.2 Perkembangan Internet dikelompokkan dalam 4 periode perkembangan,
yaitu :




Periode pertama : Packet switching (1961-1972)
Periode kedua : Internetworking (1972-1980)
Periode ketiga : Protokol Baru dan pertumbuhan jaringan (1980-1990)
Periode keempat : komersialisasi, Website dan aplikasi baru (1990-2000an)
2.3 Perkembangan Internet di indonesia
 Berawal dari BPPT – UI – LAPAN di tahun 1992
 Terbentuk Paguyuban – teknologi packet radio sebagai basis untuk network regional
5 PERKEMBANGAN WEB
 1994 – Indointernet sebagai ISP komersil pertama
 1996 – paling tidak 20 ISP komersil & 40 ISP menunggu ijin operasi
 World Wide Web Consortium(W3C): Bertanggung jawab terhadap perkembangan dari berbagai
protokol dan standar yang terkait dengan web. Misalnya standarisasi HTML, XHTML, dan CSS
diatur oleh W3C.
The Internet Assigned Authority (IANA) & Internet Network Information Center (InterNIC): Kelompok ini
bertanggung jawab terhadap alokasi alamat IP dan nama domain.
2.4 Manfaat Internet:




Banyak resource yang gratis dan mudah diakses
Koneksitas Many-to-many dengan siapapun dimanapun
Informasi yang melimpah (abundant)
Informasi yang terdistribusi luas (widely distributed)
2.5 Penyalahgunaan/Kejahatan Internet






Virus
Spam mail (mail bomb)
Hacking (masuk ke jaringan lain)
Copying ilegal : konten, software. dll
Pemalsuan Naskah, tandatangan (Forgery)
Penggunaan Resource orang lain tanpa ijin
3 PERKEMBANGAN WEB
Di awal tahun 90-an telah dikenal sebuah teknologi informasi dan komunikasi khususnya dalam bidang
website. Pada tahun itu sangat membantu dalam komunikasi antar manusia di dunia karena dalam
website tersebut user bisa melihat informasi yang ditampilkan oleh pemilik website. Informasi yang
berupa tulisan dapat diakses dari seluruh dunia.
6 PERKEMBANGAN WEB
3.1 Web Amikom Januari Tahun 2001
Kira-kira pada Tahun 1997 sudah semakin berkembang untuk tampilan sebuah website. Desain web
menjadi lebih menarik dengan menggunakan CSS atau Javascript untuk memperindah tampilan. User
pengguna lebih banyak berinteraksi di web, seperti search, input form, FAQ, forum atau buku tamu di
web.
Dan sekitar tahun 2000-an tampilan web menjadi lebih interaktif, yang sebelumnya animasi hanya
menggunakan javascript dan java applet, kini digunakan flash dan sudah dapat menggunakan movie
atau sound yang tersaji di halaman web.
Boleh dikatakan bahwa website di era ’90 an merupakan website 1.0 dan di era 2000-an merupakan era
website 2.0. Kalau kita lihat ada banyak sekali perkembangan yang terjadi. Misalnya saja kalau jaman
dahulu di website 1.0 user hanya bisa melihat informasi saja, kalau di jaman sekarang website 2.0 user
bisa berkomunikasi dengan lebih fleksibel.
Dari sisi teknologi HTML mulai berkembang menjadi XHTML dan lebih kuat di CSS untuk design Web,
kemudian muncul juga RSS Feed dalam format XML yang dapat digunakan untuk selalu update informasi
web tersebut tanpa harus membuka web tersebut, tetapi harus menggunakan RSS Reader yang dapat di
develop menggunakan berbagai bahasa pemrograman, sehingga memungkinkan dapat diakses melalui
aplikasi-aplikasi dalam bentuk selain website.
Teknologi javascript juga mulai dikembangkan menjadi AJAX, yang merupakan perpaduan antara
Javascript dan XML yang memungkinkan meload/mengambil kontent dari suatu web tanpa harus
melakukan refresh/berpindah halaman.
7 HTML
Pada era tahun 2007 Social Networking mulai berkembang dan menjadi tren dalam teknologi informasi
khususnya web site. Disini aplikasi tersebut menyediakan interaksi antar user untuk share comment,
photo atau data-data yang lain.
Aplikasi web di era ini juga menjadi sebuah platform baru, yaitu dari pihak lain dapat mengembangkan
aplikasi(plugin) untuk dapat digunakan di web tersebut.
Sejak saat itu, muncul juga teknologi Web Service yang memungkinkan aplikasi lain mengakses datadata dari penyedia layanan untuk digunakan. Aplikasi ke-3 tersebut tidak hanya dapat membaca datadata saja, tetapi bisa juga melakukan update terhadap data-data tersebut.
3.2 Web Twitter Tahun 2012
Dan di era 2010 sampai sekarang, teknologi web lebih ke arah Web Cerdas atau Web dengan Engine
Kecerdasan Buatan, yang lebih memudahkan user dalam berinteraksi.
Teknologi Web Semantik dan Cloud Computing mulai dikenalkan di era web versi 3.0 ini
4 HTML
HTML adalah bahasa untuk membentuk sebuah halaman web, dan html bukan sebuah bahasa
pemrograman melainkan bahasa markup (markup language). Markup language terdiri dari sekumpulan
markups tag. HTML adalah suatu singkatan dari Hyper Text Markup Language, jadi html menggunakan
markups tag untuk membentuk sebuah halaman web.
8 HTML
HTML markups tag biasa juga disebut HTML tag, html tag adalah suatu text/keyword yang di apit oleh
suatu tag seperti <html>. Html tag biasanya berupa suatu pasangan tag, meskipun ada juga yang satu
tag. Contohnya <p>this is paragraph</p>, merupakan suatu html tag yang diawali dengan openig tag
<p> dan closing tag </p>. Berbeda dengan contoh berikut: <p>this is first line <br /> and this is second
line</p>, tag <br /> adalah opening tag sekaligus closing tag.
Berikut contoh struktur dasar HTML tag yang membentuk sebuah halaman web:
<html>
<head></head>
<body>
<h1>My First Heading</h1>
<p>My first paragraph.</p>
</body>
</html>
4.1 HTML Element
Sebelum memulai menuliskan tag html, kita perlu persiapkan text editor dan web browser. Untuk
pemula disarankan jangan menggunakan Adobe Dreamweaver karena sudah banyak tools instant yang
bisa digunakan, silahkan gunakan Notepad++ atau Aptana.
Sebuah tag html ada yang mempunyai attribute atau tidak, attribute tsb digunakan sbg tambahan
informasi di dalam elemen html. Attribute tsb dituliskan di dalam opening tag html, dan attribute
mempunyai name dan value. Penulisan atara nama attribute dan value attribute dipisahkan dengan
tanda = dan di value harus selalu menggunakan quote(”).
Penulisan semua elemen html termasuk tag dan attribute harus menggunakan lower-case.
4.1 Struktur element HTML
9 HTML
4.2 HTML Text Formatting
Beberapa tag html digunakan untuk melakukan formatting terhadap text, seperti <b>, <i>, <em> dsb.
Berikut beberapa tag-tag html yang disebut dengan formatting tag
TAG
DESCRIPTION
<b>
Defines bold text
<big>
Defines big text
<em>
Defines emphasized text
<i>
Defines italic text
<small>
Defines small text
<strong> Defines strong text
<sub>
Defines subscripted text
<sup>
Defines superscripted text
<ins>
Defines inserted text
<del>
Defines deleted text
4.3 HTML Tabel
Table di HTML di definisikan dengan tag <table>. Table terbagi dalam baris/rows dengan tag <tr>, dan
tiap baris terbagi lagi dalam kolom dengan tag <td> untuk data atau <th> untuk header.
Di dalam tag <td> dapat berisi text atau tag-tag html lain seperti link, image, list, form, dll.
<table border="1">
<tr>
<td>row 1, cell 1</td>
<td>row 1, cell 2</td>
</tr>
<tr>
<td>row 2, cell 1</td>
<td>row 2, cell 2</td>
</tr>
</table>
Kita dapat juga mengganti <td> ke <th> untuk header
<table border="1">
<tr>
<th>Header 1</th>
<th>Header 2</th>
</tr>
10 HTML
<tr>
<td>row 2, cell 1</td>
<td>row 2, cell 2</td>
</tr>
</table>
Di dalam tabel cell kita dapat juga menggabungkan kolom dengan atribut colspan atau menggabungkan
baris dengan atribut rowspan
<table border="1">
<tr>
<td>row 1 cell 1</td>
<td>row 1 cell 2</td>
</tr>
<tr>
<td colspan="2">
row 2 cell 1
</td>
</tr>
</table>
<table>
<tr>
<td rowspan="2">
row 1 cell 1
</td>
<td>
row 1 cell 2
</td>
</tr>
<tr>
<td>row 2 cell 2</td>
</tr>
</table>
4.4 HTML List
List di HTML dapat berupa list berurutan (ordered list) atau list tidak berurutan (unordered list). Ordered
list dapat menampilkan list seperti anga 1, huruf a, romawi I. Sedangkan untuk unordered list dapat
menampilkan list seperti disk(dot), lingkaran(circle), persegi(square).
11 HTML
Berikut contoh untul Unordered list
<ul>
<li>Coffee</li>
<li>Milk</li>
<li>Tea</li>
</ul>
<ul type="disc">
<li>Coffee</li>
<li>Milk</li>
<li>Tea</li>
</ul>
Dan berikut contoh untuk ordered list, di ordered list kita dapat menambahkan atribut start untuk
memulai awalan list
<ol>
<li>Coffee</li>
<li>Milk</li>
<li>Tea</li>
</ol>
<ol type="I">
<li>Coffee</li>
<li>Milk</li>
<li>Tea</li>
</ol>
4.5 HTML Form
Form digunakan untuk berkomunikasi antar pengguna web dengan server, atau untuk mengirim data ke
server untuk di proses. Form menggunakan tag <form> yang mempunyai content di dalamnya beberapa
tag-tag input yang dapat digunakan untuk interaksi user dengan server.
Berikut beberapa element yang digunakan sebagai input di dalam form :
1. Text Fields <input type=”text” /> defines a one-line input field that a user can enter text
2. Password Field <input type=”password” /> defines a password field
3. Radio Buttons <input type=”radio” /> defines a radio button. Radio buttons let a user select
ONLY ONE of a limited number of choices
4. Checkboxes <input type=”checkbox” /> defines a checkbox. Checkboxes let a user select ONE or
MORE options of a limited number of choices.
12 CSS (Cascade Style Sheet)
5.
6.
7.
8.
Option <select><option value=”1″>Value 1</option></select> defines a option select.
Textarea <textarea></textarea> defines a input field for rich text.
File <input type=”file” /> defines a input field for upload files.
Submit Button <input type=”submit” /> defines a submit button.
<form method="post" action="">
First Name:<input type="text" size="12" maxlength="12" name="fname"><br />
Last Name:<input type="text" size="12" maxlength="36" name="lname"><br />
Gender::<br />
<input type="radio" value="male" name="gender"> Male<br />
<input type="radio" value="female" name="gender"> Female<br />
Please choose Favourite foods::<br />
<input type="checkbox" value="Steak" name="food[]"> Steak<br />
<input type="checkbox" value="Pizza" name="food[]"> Pizza<br />
<input type="checkbox" value="Chicken" name="food[]"> Chicken<br />
<textarea rows="5" cols="20" name="quote" wrap="physical"></textarea><br />
Select a Level of Education::<br />
<select name="education">
<option value="junior">Jr.High</option>
<option value="high">HighSchool</option>
<option value="college">College</option></select><br />
Upload foto: <br />
<input type="file" name="foto" /><br />
<input type="submit" value="Simpan" />
<input type="reset" value="Reset" />
</form>
5 CSS (CASCADE STYLE SHEET)
CSS (Cascade Style Sheet) digunakan untuk dapat menambahkan style halaman kita, meningkatkan dan
memperbaiki penyajian isi halaman. CSS juga dapat bertindak sebagai lapisan yang mempengaruhi
13 CSS (Cascade Style Sheet)
presentasi dari elemen XHTML yang diberikan. Warna, font, text size, background, susunan elemen pada
halaman dan seluruh aspek presentasi isi, dikontrol oleh CSS.
CSS dibangun berdasarkan aturan-aturan yang berisi set intruksi yang dapat memerintahkan browser
mengikuti aturan untuk mengubah penampilan elemen XHTML didasarkan pada nilai-nilai yang
diberikan.
1 CSS Rule
Untuk dapat menggunakan CSS kita harus menghubungkan style sheet ke dokumen HTML kita. Cara
menggabungkan CSS ke dokumen HTML ada 3 cara, yaitu:



Inline Style
Embedded Style Sheets
External Style Sheets
5.1 Inline Style
Kita dapat memasukkan deklarasi CSS dalam gaya opsional atribut sari setiap elemen dan markup. Tidak
dibagun sebagai aturan, dan tidak ada selector karena properti dan nilainya melekat langsung pada
elemen.
<h2 style="color: red; border-bottom: 1px">
Good eats for hungry geeks
</h2>
<p style="color: gray; margin-left: 10px">
Our fresh pizzas, hearty pasta dishes, and succulent desserts are sure to please.
And don't forget about our daily chalkboard specials!
</p>
5.2 Embedded Style Sheets
Kita dapat menanamkan aturan CSS dalam elemen head dari dokumen, yan gaturan tersebut dapat
digunakan pada dokumen yang sama dimana dideklarasikan. Embedded style sheet (kadang disebut
internal style sheet).
14 CSS (Cascade Style Sheet)
<head>
<style type="text/css">
h2 { color: red; }
p { color: gray; }
.info {background:#cccccc; border:1px}
.label {margin:5px; color:#efefef}
</style>
</head>
5.3 External Style Sheets
Model ini adalah yang terbaik yaitu menempatkan aturan CSS terpisah dengan dokumen XHTML, style
sheet external langsung terhubung dengan dokumen. Kode CSS tersebut disimpan dalam file yang
terpisah dengan extensi .css.
Pendekatan ini benar-benar memisahkan antara presentasi dan isi dan struktur. Sebuah dokumen
XHTML menghubungkan ke external style sheet melalui elemen head.
<head>
<link rel="stylesheet"
type="text/css" href="styles.css" />
</head>
5.4 CSS Selector
Selain menggunakan style format untuk tiap elemen tag di html, di CSS kita dapat juga menetapkan
seleksi tag-tag html menggunakan “id” atau “class”.
5.4.1 Id Selector
Id Selector digunakan untuk menambahkan style di elemen html tunggal yang unik. Id Selector
menggunakan atribut id elemen html, dan didefinisikan dengan “#”. Cara pemanggilan di dalam tag html
adalah dengan menambahkan atribut id dan values nama elemen id tersebut.
#head{
text-align:center;
color:red;
}
<div id="head">Iam Heading Text</div>
5.4.2 Class Selector
Class Selector digunakan untuk menentukan style untuk sekelompok elemen html. Berbeda dengan id
selector, pemilih kelas yang paling sering digunakan pada beberapa elemen. Hal ini memungkinkan
untuk menggunakan style tertentu untuk elemen html dengan banyak kelas yang sama. Class Selector
menggunakan atribut id elemen html, dan didefinisikan dengan “.” Cara pemanggilan di dalam tag html
adalah dengan menambahkan atribut class dan values nama elemen class tersebut.
.center {text-align:center;}
15 CSS (Cascade Style Sheet)
<p class="center">The quick brown fox jumps over the lazy dog</p>
5.5 Contoh CSS
5.5.1 CSS Background
Untuk memperindah tampilan halaman suatu web kita dapat menggunakan background yang di
definisikan di CSS dengan menggunakan warna atau image atau kombinasi dari warna dan image. Untuk
penggunaan background tidak hanya dapat digunakan dalam tag body di halaman web saja, kita dapat
menggunakan di selector (ID dan CLASS) untuk layout tertentu dari bagian halaman web.
1. Background Colour
body
{
background: #e5e500;
}
2. Background Image
body
{
background: url('path-to-the-image');
}
3. Repeat Background Image
body
{
background: url('path-to-the-image') repeat-x; /* repeat horizontal */
background: url('path-to-the-image') repeat-y; /* repeat vertical */
}
4. Background Image Position
body
{
background: url('path-to-the-image') 0px 100px;
background: url('path-to-the-image') top center;
}
5. Background colour dan Image
body
{
background: #f5f5f5 url('path-to-the-image') no-repeat top left;
}
16 CSS (Cascade Style Sheet)
5.1 Tampilan Web dengan CSS Background
5.5.2 CSS Table
Dalam mendesign halaman web, tabel sering kita gunakan untuk menampilkan data-data berurutan
dalam jumlah yang banyak. Untuk memudahkan user melihat data tersebut dan mempercantik
tampilan, tabel tersebut dapat kita tambahkan CSS
Contoh script css sebagai berikut
h1{
font: 18px/24px Verdana, Arial, Helvetica, sans-serif;
}
table {
font: 11px/24px Verdana, Arial, Helvetica, sans-serif;
border-collapse: collapse;
width: 600px;
}
17 CSS (Cascade Style Sheet)
th {
padding: 0 0.5em;
text-align: left;
border-top: 1px solid #FB7A31;
border-bottom: 1px solid #FB7A31;
background: #FFC;
}
td {
border-bottom: 1px solid #CCC;
padding: 0 0.5em;
}
td:first-child {
width: 10px;
text-align:center
}
tr:hover{
background:#e5e5e5;
}
tr:nth-child(odd)
{
background-color:#f5f5f5;
}
tr:nth-child(even)
{
background-color:#fff;
}
18 Javascript
5.2 Tampilan Web dengan CSS Table
6 JAVASCRIPT
JavaScript didesain untuk menambah interaktif suatu halaman Web dan merupakan suatu bahasa
Scripting (bahasa pemrograman ringan). JavaScript berisi baris kode yg dijalankan di web browser dan
biasanya disisipkan (embedded) dalam halaman Web, javaScript juga merupakan bahasa interpreter
(script di eksekusi tanpa kompilasi)
Penulisan JavaScipt pada halaman web ada 3 cara, yaitu:
1. Diletakkan di Head
2. Ditulisakan di Body
3. External File
6.1 Penulisan Javascript
6.1.1 Diletakkan di bagian Head
Skrip ini akan dieksekusi ketika dipanggil (biasanya berbentuk function) atau dipanggil berdasarkan
trigger pada event tertentu. Peletakan skrip di head akan menjamin skrip di-load terlebih dahulu
sebelum digunakan (dipanggil).
<head>
<script type="text/javascript"> ... </script>
</head>
6.1.2 Penulisan pada bagian Body
Skrip akan dieksekusi ketika halaman di-load sampai di bagian <body>. Ketika menempatkan skrip pada
bagian <body> berarti antara isi dan JavaScript dijadikan satu bagian. JumlahJavaScript di<head>
dan<body> yang ditempatkan pada dokumen kita tak terbatas.
<html>
19 Javascript
<head></head>
<body>
<script type="text/javascript"> ... </script>
</body>
</html>
6.1.3 Penulisan di External File
Terkadang kita ingin menjalankan JavaScript yang sama dalam beberapa kali pada halaman yang
berbeda, tetapi tidak mau disibukkan jika harus menulis ulang skrip yang diinginkan di setiap halaman.
<body>
<script type="text/javascript" src="xxx.js"> ... </script>
</body>
Contoh Javascript sederhana untuk menampilkan text di browser
<body>
<script type="text/javascript"> Document.write("ini ditulis dgn javascript");
</script>
</body>
Contoh Javascript sederhana menampilkan alert di halaman web
<body>
<script type="text/javascript"> alert("ini ditulis dgn javascript"); </script>
</body>
6.2 Fungsi di Javascript
Seperti di pemrograman lainnya, Fungsi di javascript di gunakan untuk mempaket baris-baris kode yang
sering kita gunakan dengan tujuan menyederhanakan penulisan script itu sendiri.
Biasanya penulisan Javascript di External File banyak menggunakan fungsi, berikut beberapa macam
penulisan fungsi di Javascript :
1. Fungsi tanpa parameter
2. Fungsi dengan parameter
3. Fungsi yang mengembalikan Nilai
6.2.1
Fungsi tanpa parameter
<script type="text/javascript">
function showMsg(){
alert("Hello World"); }
</script>
6.2.2
Fungsi dengan parameter
<script type="text/javascript">
20 Javascript
function showMsg(txt){
alert(txt); }
</script>
6.2.3
Fungsi yang mengembalikan nilai
<head>
<script type="text/javascript">
function jml(a,b){
return a+b;
}
</script>
</head>
<body>
<script type="text/javascript"> document.write(jml(4,7)); </script>
</body>
6.3 Javascript Event
Adalah suatu aksi di web browser yang dapat dikenali oleh Javascript. Setiap elemen di dalam tag-tag
html mempunyai event yang dapat dikenali untuk diteruskan ke proses-proses menggunakan javascript.
Sebagai contoh event onClick pada elemen html yang akan mengakses fungsi-fungsi tertentu saat user
melakukan klik di elemen tersebut.
Beberapa events yang dapat dikenali olehJavascript:
1.
2.
3.
4.
5.
6.
A mouse click
A web page or an image loading
Mousing over a hot spot on the web page
Selecting an input field in an HTML form
Submitting an HTML form
A keystroke
Contoh script penggunaan Events
<html>
<head>
<script type="text/javascript">
function displayDate()
{
document.getElementById("demo").innerHTML=Date();
}
</script>
21 Javascript
</head>
<body>
<h1>My First Web Page</h1>
<p id="demo"></p>
<button type="button" onclick="displayDate()">Display Date</button>
</body>
</html>
Event
Applies To:
Triggered When:
onClick
Button, Document, Checkbox,
The object is clicked on.
Link, Radio, Reset, Submit
onChange
FileUpload, Select, Text, TextArea
The user types anything on
the control.
onSubmit
Form
The form’s Submit button is
clicked.
onMouseDown Button, Document, Link
The user presses a mouse
button.
onMouseMove
Image (NOT NS4), Link ,span,div
The user moves the mouse.
onMouseOut
Image (NOT NS4), Link ,span,div
The user moves the mouse
away from the object.
onMouseOver
Image (NOT NS4), Link ,span,div
The user moves the mouse
over the object.
onMouseUp
Button, Document, Link ,span,div
The user releases a mouse
button.
onMove
Window
The user moves the browser
window or frame.
onFocus
Button, Checkbox, FileUpload,
The object in question gains
Layer, Password, Radio, Reset,
focus (e.g. by clicking on it or
Select, Submit, Text, TextArea,
pressing the TAB key).
Window
onBlur
Button, Checkbox, FileUpload, The object in question loses
Layer, Password, Radio, Reset, focus (e.g. by clicking outside
22 HTM L DOM
Select, Submit, Text, TextArea, it or pressing the TAB key).
Window
onKeyDown
Document, Image, Link, TextArea
The user presses a key.
onKeyPress
Document, Image, Link, TextArea
The user presses or holds
down a key.
onDblClick
Document, Link
The object is double-clicked
on.
onDragDrop
Window
An icon is dragged and
dropped into the browser.
onError
Image, Window
A JavaScript error occurs.
onKeyUp
Document, Image, Link, TextArea
The user releases a key.
onLoad
Image, Window
The whole page has finished
loading.
onReset
Form
The user clicks the form’s
Reset button.
onResize
Window
The user resizes the browser
window or frame.
onSelect
Text, Textarea
The user selects text within
the field.
onAbort
Image
The loading of the image is
cancelled.
onUnload
Window
The user leaves the page.
7 HTM L DOM
The W3C Document Object Model (DOM) adalah standard bagaimana mengambil, update,
menambahkan atau menghapus element di HTML. Menurut DOM, segala sesuatu yang terdapat di
dokumen HTML adalah node.




Seluruh dokumen HTML adalah dokumen node
Setiap HTML element adalah element node
Text diantara HTML element adalah text node
Setiap atribut di HTML element adalah atribut node
<html>
<head>
<title>DOM Tutorial</title>
</head>
<body>
23 HTM L DOM
<h1>DOM Lesson one</h1>
<p>Hello world!</p>
</body>
</html>
Dari contoh dokumen HTML diatas, dapat kita ambil kesimpulan




Node root adalah element <html>
<html> node mempunyai 2 child yaitu node <head> dan <body>
<head> node mempunyai child <title>
<body> node mempunyai 2 child <h1> dan <p>
Perlu diperhatikan bahwa Text node selalu tersimpan diantara node atau html element, dan HTML DOM
dapat mengakses value dari text tersebut menggunakan properti innerHTML.
7.1 HTML DOM Properties
Some DOM properties:






x.innerHTML – the text value of x
x.nodeName – the name of x
x.nodeValue – the value of x
x.parentNode – the parent node of x
x.childNodes – the child nodes of x
x.attributes – the attributes nodes of x
Note: In the list above, x is a node object (HTML element).
7.2 HTML DOM Methods
Some DOM methods:




x.getElementById(id) – get the element with a specified id
x.getElementsByTagName(name) – get all elements with a specified tag name
x.appendChild(node) – insert a child node to x
x.removeChild(node) – remove a child node from x
Note: In the list above, x is a node object (HTML element).
<html>
<body>
<p id="intro">Hello World!</p>
<script type="text/javascript">
txt = document.getElementById("intro").innerHTML;
document.write("<p>The text from the intro paragraph: " + txt + "</p>");
24 HTM L DOM
</script>
</body>
</html>
Dari contoh script diatas, variabel txt menampung text node dari element <p>. Saat kita ganti Hello
World! dengan text lain, maka variabel txt akan ikut berubah.
Kita dapat mengganti properties innerHTML menjadi nodeName untuk mengetahui nama element html
yang menpunyai atribut “intro” tersebut.
<html>
<body>
<p>Hello World!</p>
<p>Hello Dab!</p>
<script type="text/javascript">
x = document.getElementsByTagName("p");
y = x[0].innerHTML;
document.write(y);
</script>
</body>
</html>
Dari contoh script diatas, variabel x menampung text dari node <p>. Karena menggunakan method
getElementsByTagName, kemungkinan adanya tag <p> lebih dari satu sangat memungkinkan, maka kita
gunakan variabel baru untuk menampung data tersebut dengan menyebutkan index array dan
menggunakan properties innerHTML.
Bisa dicoba dengan mengubah index array dari 0 ke 1, maka akan terihat perubahan text node yang
tampil.
Sekarang kita coba untuk melakukan update/perubahan text node di html element.
<html>
<body>
<p id="p1">Hello World!</p>
<script type="text/javascript">
document.getElementById("p1").innerHTML="New text!";
25 HTM L DOM
</script>
</body>
</html>
Dari script diatas, dapat kita lihat browser menampilkan New text! di dalaman element <p>, tidak text
Hello World! seperti pada source code. Disini kita melakukan perubahan text node di elemen <p>
tersebut dengan properties innerHTML.
Kita dapat juga melakukan perubahan text node saat event tertentu, misalkan kita gunakan button
dengan event onclick untuk merubah text node, perhatikan script berikut:
<html>
<body>
<p id="p1">Hello World!</p>
<input type="button" onclick="document.getElementById('p1').innerHTML='New text!';"
value="Abrakadabra" />
</body>
</html>
Contoh diatas kita hanya merubah 1 text node saja, jika perubahan lebih dari 1 akan lebih mudah kita
gunakan function untuk mengatasi hal tersebut seperti contoh berikut:
<html>
<head>
<script type="text/javascript">
function change()
{
document.getElementById("p1").innerHTML="New text!";
document.body.style.backgroundColor="lavender";
}
</script>
</head>
<body>
<p id="p1">Hello world!</p>
<input type="button" onclick="change()" value="Abakadabra" />
</body>
</html>
Konsep HTML DOM ini akan kita gunakan untuk menggunakan AJAX atau Jquery di pembahasan
selanjutnya..
26 AJAX
8 AJAX
AJAX(Asynchronous Javascript and XML) bukan merupakan bahasa pemrogrman baru, tetapi merupakan
suatu cara menggabungkan antara Javascript dan XML. Konsep AJAX adalah melakukan pertukaran data
ke server dan melakukan update di sebagian halaman web tanpa melakukan reload/refresh seluruh
halaman.
AJAX menggunakan standard Internet, yaitu:




XMLHttpRequest object (to exchange data asynchronously with a server)
JavaScript/DOM (to display/interact with the information)
CSS (to style the data)
XML (often used as the format for transferring data)
Langkah-langkah Pemrograman AJAX
1. XMLHttpRequest Object, disini digunakan sebagi object untuk pertukaran data ke server.
Dibedakan menjadi 2 jenis, yaitu untuk IE 6 kebawah menggunakan
new ActiveXObject("Microsoft.XMLHTTP");
dan selain itu menggunakan
new XMLHttpRequest();
2. Mengirim request ke Server, disini digunakan 2 fungsi, yaitu : open(method, url, async) dan
send()
xmlhttp.open("GET","data.txt",true);
xmlhttp.send();
3. Onreadystatechange Event, digunakan untuk mengambil data setiap request ke server dan
server siap mengembalikan response. Di function ini digunakan readyState dan Status untuk
melakukan pengecekan
PROPERTY
DESCRIPTION
onreadystatechange
Stores a function (or the name of a function) to be called automatically
each time the readyState property changes
readyState
Holds the status of the XMLHttpRequest. Changes from 0 to 4:
0:
request
not
initialized
1:
server
connection
established
2:
request
received
3:
processing
request
4: request finished and response is ready
status
200:
404: Page not found
“OK”
27 AJAX
4. Callback Function, digunakan untuk melakukan update terhadap element HTML yang kita
inginkan dengan
5. kembalian data dari Server.
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
}
}
Berikut code lengkap jika kita ingin mengambil data dari Server, di code tersebut kita akan mengambil
data.txt dari server web, maka kita harus siapkan web server(dapat menggunakan XAMPP) dan letakkan
file data.txt di htdocs.
<html>
<head>
<script type="text/javascript">
function loadXMLDoc()
{
var xmlhttp;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","http://localhost/data.txt",true);
xmlhttp.send();
}
</script>
</head>
28 JQUERY
<body>
<div id="myDiv"><h2>Let AJAX change this text</h2></div>
<button type="button" onclick="loadXMLDoc()">Change Content</button>
</body>
</html>
9 JQUERY
jquery merupakan library javascript yang lebih memudahkan kita dalam develop tampilan web supaya
lebih interaktif. Untuk menggunakan jquery kita harus menyertakan file library jquery tsb di dalam
halaman web.
<script type="text/javascript" src="jquery.js"></script>
Beberapa fitur yang disediakan jquery antara lain: HTML element selections, HTML element
manipulation, CSS manipulation, HTML event functions, JavaScript Effects and animations, HTML DOM
dan AJAX.
Kerangka awal struktur coding penggunaan jquery adalah sbb:
$(document).ready(function(){
});
Contoh script diatas adalah jika tidak ada event tertentu, maka script javascript bisa di letakkan di dalam
kerangka tersebut, sedangkan jika terdapat event maka coding menyesuaikan setelah event , contoh:
$(document).ready(function(){
$("#menu").click(function(){
})
});
Contoh script jquery dengan event click dan menampilkan effect slide toggle pada image
<script type="text/javascript">
$(document).ready(function(){
$('img').hide();
$('#title').click(function(){
$('img').slideToggle(500);
});
});
</script>
29 JQUERY
<div id="title">HTC Desire S Review</div>
<img src="img/htc-desire-s.jpg" alt="Desire S Image" />
Diatas adalah contoh konsep penulisan jquery, untuk lebih detail dalam menggunakan fitur-fitur yang
ada di jquery bisa langsung menuju ke dokumentasi jquery
9.1 Jquery Event
Di artikel kali ini saya akan mencoba menjelaskan tentang event di jQuery, event disini maksudnya
pemicu untuk memulai fungsi-fungsi yang akan dikerjakan saat terjadi event tersebut.. *kurang lebih
seperti itu*
Banyak sekali event yang sudah tersedia di jQuery, tapi saya akan jelaskan sebagian saja yang sering
digunakan.
9.1.1 .click()
Fungsi-fungsi akan dijalankan jika kita menekan tombol kiri dari mouse di element tertentu yang telah
kita definisikan (selector, HTML DOM).
<p id="select">Click me if you can</p>
<p id="result"></p>
$(document).ready(function(){
$('#select').click(function(){
$('#result').text('yeeeaah, you got it!!');
});
});
Contoh script diatas saat element p dengan id select di kenakan event click, maka element p yang lain
dengan id result akan di sisipkan text diantara element p tersebut.
9.1.2 .mouseover()
Event akan menjalankan fungsi-fungsi saat pointer mouse melewati element tertentu yang telah kita
definisikan.
<p id="select">Click me if you can</p>
<p id="result"></p>
$(document).ready(function(){
$('#select').mouseover(function(){
$('#result').text('yeeeaah, you got it!!');
});
});
9.1.3 .mouseout()
Merupakan lawan/kebalikan dari event .mouseover(), fungsi-fungsi akan di jalankan saat pointer mouse
meninggalkan element yang telah kita definisikan.
<p id="select">Click me if you can</p>
30 JQUERY
<p id="result"></p>
$(document).ready(function(){
$('#select').mouseover(function(){
$('#result').text('yeeeaah, you got it!!');
});
$('#select').mouseout(function(){
$('#result').text('');
});
});
9.1.4 .focus()
Event yang biasa digunakan untuk textfield di form, fungsi-fungsi akan dijalankan saat focus keyboard
atau mouse berada di dalam element textfield tersebut.
<input type="text" id="select" />
<p id="result"></p>
$(document).ready(function(){
$('#select').focus(function(){
$('#result').text('yeeeaah, you got it!!').fadeOut(2000);
});
});
Saat mouse atau cursor keyboard masuk ke dalam textfield, maka element p dengan id result akan
menampilkan text dan saat tambahkan effect .fadeOut() yang akan menghilangkan text dalam rentang
waktu 2000ms(2dtk).
9.1.5 .keyup()
Event ini sering digunakan di textfield pada form juga, tetapi fungsi-fungsi dijalankan saat kita
mengetikkan karakter melalui keyboard pada element textfield tersebut.
<input type="text" id="select" />
<p id="result"></p>
$(document).ready(function(){
$('#select').keyup(function(){
var isi = $('#select').val();
$('#result').text(isi);
});
});
Script diatas melakukan event trigger saat user menuliskan karakter di textfield dan var count akan
menghitung jumlah karakter yang sudah dituliskan.
31 JQUERY
9.2 Jquery Effect
Terdapat juga beberapa effect yang dapat kita gunakan dalam develop jQuery, effect tersebut akan
membuat tampilan di halaman web lebih interaktif. Beberapa effect tersebut dapat kita gunakan
langsung atau dengan perpaduan effect yang lain.
Berikut contoh Effect yang sering kita gunakan di jQuery
9.2.1 .fadeIn()
Menampilkan effect memudar dari element yang disembunyikan menjadi tampil, kita dapat mengisi
parameter “slow”, “fast” atau menggunakan satuan milisecond.
<button id="select">hello</button><br />
<p id="rst"></p>
$('#rst').hide();
$('#select').click(function(){
$('#rst').text('ok, you got it!!').fadeIn(3000);
});
9.2.2 .fadeOut()
Merupakan Effect yang berlawanan dari .fadeIn(), effect tersebut akan memudarkan element menjadi
hilang, parameter dapat menggunakan “slow”, “fast” atau menggunakan satuan milisecond
<button id="select">hello</button><br />
<p id="rst"></p>
$('#rst').hide();
$('#select').click(function(){
$('#rst').text('ok, you got it!!').fadeIn(3000, function(){
$('#rst').fadeOut(2000);
});
});
9.2.3 .toggle()
Effect yang digunakan untuk menampilkan dan menyembunyikan element secara bergantian berdasar
pointer mouse, parameter dapat menggunakan “slow”, “fast” atau menggunakan satuan milisecond.
<button id="select">hello</button><br />
<p id="rst"></p>
$('#rst').hide();
$('#select').click(function(){
$('#rst').text('ok, you got it!!').toggle('fast');
});
32 XML
9.2.4 .fadeToggle()
Sama seperti effect .toggle() dengan tambahan animasi membaur, parameter dapat menggunakan
“slow”, “fast” atau menggunakan satuan milisecond.
<button id="select">hello</button><br />
<p id="rst"></p>
$('#rst').hide();
$('#select').click(function(){
$('#rst').text('ok, you got it!!').slideToggle('fast');
});
9.2.5 .animate()
Merupakan effect yang dapat kita custom sendiri sesuai dengan CSS, parameter yang kita gunakan
adalah menggunakan beberapa properties CSS, satuan waktu saat animasi berjalan dan fungsi setelah
animasi selesai.
<button id="select">hello</button><br />
<p id="rst">ok, you got it!!</p>
$('#select').click(function(){
$("#rst").animate({
marginLeft: "20px"
}, 1000, function(){ $(this).fadeOut('2000'); });
});
10 XML
XML adalah suatu format dokumen yang digunakan untuk penyimpanan data, berbeda dengan fungsi
HTML yang lebih fokus pada tampilan. Format penulisan elemen di XML mirip dengan di HTML, tetapi di
XML kita dapat mendefinisikan sendiri elemen-elemen yang akan kita gunakan.
Tujuan pembuatan dokumen XML adalah untuk menyimpan data yang bersifat global, jadi dari berbagai
platform bisa membaca ataupun bisa saling bertukar informasi melalui dokumen XML tersebut.
Bahkan di Android menggunakan dokumen XML untuk menyimpan konfigurasi dan untuk menyimpan
file setting aplikasi
Berikut beberapa konsep dalam XML :
1. Dokumen XML diawali dengan header <?xml version=”1.0″ encoding=”ISO-8859-1″?>
2. Setiap dokumen XML harus mempunyai “root element”, element ini merupakan parent dari
semual elemen.
33 XML
3. Elemen di XML merupakan Tree Element, yaitu : parent element bisa mempunyai “child”, child
bisa mempunyai child lagi, dst
4. Child yang mempunyai level sama disebut “siblings”
5. Setiap elemen harus mempunyai closed tags
6. Setiap element bisa mempunyai attribut atau tidak
7. Attribut text dalam elemen harus menggunakan quotes(‘)
8. Setiap element bisa mempunyai text data
9. XML Tags bersifat case-sensitif
Contoh dokumen XML
<?xml version="1.0" encoding="UTF-8"?>
<team name="arsenal">
<name>Arsenal</name>
<nick>The Gunners</nick>
<est>1886</est>
<stadium>Emirates Stadium</stadium>
</team>
Aturan penamaan element di dokumen XML




Dapat terdiri dari angka, huruf atau karakter lain
Tidak dapat diawali dengan angka
Tidak boleh diawali dengan kata xml, XML atau XML
Tidak boleh menggunakan karakter spasi
Beberapa karakter yang tidak boleh digunakan untuk atribut text atau elemen text data





<
>
&
'
"
Download