HTML DOM #1

advertisement
HTML DOM #1
Yosef Murya Kusuma Ardhana. ST., M.Kom
HTML ?
▪ HTML merupakan
Language.
singkatan
dari
Hypertext
Markup
▪ HTML adalah sekumpulan text atau file ASCII yang berisi
intruksi atau perintah program untuk web browser untuk
menampilkan tampilan grafis sebuah halaman website.
▪ HTML merupakan suatu bahasa yang dikenali oleh web
browser untuk menampilkan informasi seperti teks, gambar,
suara, animasi bahkan video.
HTML ?
▪ Kode HTML memiliki aturan dan struktur penulisan tersendiri
yang disebut tag HTML.
▪ Tag adalah kode yang digunakan untuk memoles (mark-up)
teks ASCII (American Standard Code for Information
Interchange) menjadi file HTML.
▪ Setiap tag diapit dengan tanda kurung runcing. Ada tag
pembuka yaitu <HTML> dan ada tag penutup yaitu </HTML>
yang ditandai dengan tanda garis miring (slash) di depan awal
tulisannya.
DOM ?
▪ HTML DOM mendefinisikan standar untuk mengakses dan
memanipulasi dokumen HTML.
▪ DOM adalah perintah standar (World Wide Web Consortium)
W3C.
▪ DOM mendefinisikan standar untuk mengakses dokumen
HTML dan XML: "W3C Document Object Model (DOM) adalah
sebuah platform dan bahasa-netral antarmuka yang
memungkinkan program dan script atau sintaks yang secara
dinamis mengakses dan memperbarui konten, struktur, dan
gaya dari sebuah dokumen."
DOM ?
W3C DOM standar dipisahkan menjadi 3 bagian yang
berbeda:
▪ DOM Core - model standar untuk dokumen terstruktur
▪ XML DOM - model standar untuk dokumen XML
▪ HTML DOM - model standar untuk dokumen HTML
HTML DOM?
HTML DOM adalah:
▪ Sebuah model objek standar untuk HTML
▪ Sebuah antarmuka pemrograman standar untuk
HTML
▪ Sebuah standar W3C
HTML DOM?
▪ HTML DOM mendefinisikan objek dan properti dari
semua elemen HTML, dan metode untuk
mengaksesnya. Dengan kata lain:
HTML DOM adalah standar untuk bagaimana untuk
mendapatkan, mengubah, menambah, atau
menghapus elemen HTML.
HTML DOM Nodes
Dalam HTML DOM, semuanya node. DOM HTML dipandang sebagai
pohon node.
DOM Nodes
▪ Menurut standar W3C HTML DOM, segala sesuatu dalam dokumen
HTML adalah node:
▪
▪
▪
▪
▪
Seluruh dokumen adalah node dokumen
Setiap elemen HTML adalah node elemen
Teks di dalam elemen HTML node teks
Setiap atribut HTML adalah node atribut
Komentar adalah node komentar
HTML DOM Nodes
▪ HTML DOM Node Pohon
HTML DOM memandang dokumen HTML sebagai struktur pohon.
Struktur ini disebut Pohon Node:
HTML DOM Nodes
▪ Dengan HTML DOM, semua node dalam pohon dapat
diakses oleh JavaScript. Semua elemen HTML (node) dapat
dimodifikasi, dan node dapat dibuat atau dihapus.
Node Parent (Orangtua), Children (Anak), dan Siblings
(Saudara)
▪ Node dalam pohon node memiliki hubungan hirarki satu
sama lain.
HTML DOM Nodes
▪ Istilah parent, children, dan siblings yang digunakan untuk
menggambarkan hubungan. Node parent memiliki children.
Children pada tingkat yang sama disebut siblings (brothers
and sisters).
▪ Dalam pohon node, node atas disebut root
▪ Setiap node memiliki tepat satu parent, kecuali root (yang
tidak memiliki parent)
▪ Sebuah node dapat memiliki sejumlah children
▪ Siblings adalah node dengan parent yang sama
HTML DOM Nodes
▪ Gambar berikut mengilustrasikan bagian dari pohon simpul
dan hubungan antara node:
HTML DOM Nodes
▪ Gambar berikut mengilustrasikan bagian dari pohon simpul
dan hubungan antara node:
HTML DOM Nodes
▪ Lihatlah fragmen HTML berikut:
HTML DOM Nodes
Dari HTML di atas:
▪ Node <html> tidak memiliki parent node, itu adalah root
node
▪ <head> dan <body> parent node nya adalah node <html>
▪ node teks "Hi DOM!" parent node nya adalah node <p>
▪ The <html> node memiliki dua child node: <head> dan
<body>
▪ <head> Node memiliki satu child node yaitu node <title>
HTML DOM Nodes
▪ <title> Node juga memiliki satu child node yaitu teks node
"DOM Tutorial"
▪ <h1> Dan node <p> adalah siblings dan kedua child node
adalah dari tag <body>
▪ Elemen <head> adalah first child dari elemen <html>
▪ Elemen <body> adalah last child dari elemen <html>
▪ Elemen <h1> adalah first child dari elemen <body>
▪ Elemen <p> adalah last child dari elemen <body>
HTML DOM METHODS
Metode adalah tindakan yang dapat Anda lakukan pada node
(Elemen HTML).
Programming Interface
▪ HTML DOM dapat diakses dengan JavaScript (dan bahasa
pemrograman lain).
▪ Semua elemen HTML didefinisikan sebagai objects, dan
antarmuka pemrograman adalah object methods dan object
properties.
▪ Method (metode) adalah suatu tindakan yang dapat Anda lakukan
(seperti menambahkan atau memodifikasi elemen).
▪ Property (properti) adalah nilai yang Anda bisa dapatkan atau atur
(seperti nama atau isi dari sebuah node).
HTML DOM METHODS
Metode getElementById()
▪ Metode getElementById() mengembalikan elemen dengan ID
yang ditentukan:
HTML DOM METHODS
Beberapa metode yang umum digunakan HTML
DOM:
▪ getElementById(id) – get (mendapatkan) node
(elemen) dengan id tertentu
▪ appendChild(node) – insert (menyisipkan) node anak
baru (elemen)
▪ removeChild(node) – remove (menghapus) child node
(elemen)
HTML DOM METHODS
▪ innerHTML – nilai teks dari node (elemen)
▪ parentNode – parent node dari node (elemen)
▪ childNodes – child node dari node (elemen)
▪ attributes – attributes node dari node (elemen)
HTML DOM METHODS
Berikut adalah beberapa metode (paling umum):
Method
getElementById()
Description
Mengembalikan elemen yang memiliki atribut
ID dengan sebuah nilai
getElementsByTagNam Mengembalikan daftar node (collection/array
e()
of nodes) yang mengandung semua elemen
dengan nama tag yang ditentukan
getElementsByClassNa Mengembalikan daftar node yang berisi semua
me()
elemen dengan kelas tertentu
HTML DOM PROPERTIES
Properti adalah nilai-nilai dari node (Elemen HTML) bahwa
Anda bisa mendapatkan (get) atau menetapkan (set).
Programming Interface
▪ HTML DOM dapat diakses dengan JavaScript (dan bahasa
pemrograman lain).
▪ Antarmuka pemrograman dari DOM didefinisikan oleh metode
dan properti.
▪ Method adalah suatu tindakan yang dapat programmer lakukan
(seperti menambahkan atau menghapus node).
▪ Property adalah nilai yang programmer bisa dapatkan atau
mengatur (seperti nama atau isi dari sebuah node).
HTML DOM PROPERTIES
InnerHTML Properti
▪ Cara termudah untuk mendapatkan konten dari suatu
elemen adalah dengan menggunakan properti
innerHTML.
▪ InnerHTML properti berguna untuk mendapatkan atau
mengganti isi dari elemen HTML.
▪ Contoh code berikut mendapat innerHTML dari elemen
<p> dengan id="intro":
HTML DOM PROPERTIES
HTML DOM PROPERTIES
▪ Dalam contoh di atas, getElementById adalah metode,
sementara innerHTML adalah sebuah properti.
▪ Tips : InnerHTML properti dapat digunakan untuk
mendapatkan atau mengubah elemen HTML, termasuk
<html> dan body.
HTML DOM PROPERTIES
Properti nodeName
Properti nodeName menentukan nama node.
▪ nodeName adalah read-only
▪ nodeName dari node elemen adalah sama seperti nama tag
▪ nodeName dari node atribut adalah nama atribut
▪ nodeName dari node teks selalu #text
▪ nodeName dari node dokumen selalu #document
Catatan: nodeName selalu berisi nama tag huruf besar dari elemen HTML.
HTML DOM PROPERTIES
Properti nodeValue
Property nodeValue menentukan nilai dari sebuah node.
▪ nodeValue untuk node elemen tidak terdefinisi
▪ nodeValue untuk node teks adalah teks itu sendiri
▪ nodeValue untuk node atribut adalah nilai attribut
HTML DOM PROPERTIES
Contoh berikut mengambil teks nilai node tag <p
id="intro"> :
HTML DOM PROPERTIES
The NodeType Properti
▪ Properti nodeType mengembalikan jenis node. nodeType
hanya dapat dibaca.
▪ Jenis node yang paling penting
adalah:
Element type
NodeType
Element
1
Attribute
2
Text
3
Comment
8
Document
9
HTML DOM – ELEMENTS
Menambah, Menghapus dan Mengganti Elemen HTML.
Menciptakan Elemen HTML Baru - appendChild()
▪ Untuk menambahkan elemen baru ke HTML DOM,
Anda harus membuat elemen (node elemen)
pertama, dan kemudian tambahkan ke elemen yang
ada.
HTML DOM – ELEMENTS
HTML DOM – ELEMENTS
Membuat HTML Elemen baru - insertBefore()
▪ The appendChild() metode dalam contoh
sebelumnya, ditambahkan elemen baru sebagai last
child dari parent.
▪ Jika Anda tidak ingin bahwa Anda dapat
menggunakan metode insertBefore() :
HTML DOM – ELEMENTS
HTML DOM – ELEMENTS
Menghapus Elemen HTML yang ada
▪ Untuk menghapus
▪ sebuah elemen HTML, Anda harus mengetahui parent dari elemen:
HTML DOM – ELEMENTS
Mengganti Elemen HTML
▪ Untuk mengganti sebuah elemen ke HTML DOM, gunakan metode
replaceChild():
HTML DOM – EVENTS
HTML DOM memungkinkan JavaScript untuk bereaksi terhadap
event HTML.
Bereaksi terhadap Events
▪ Sebuah JavaScript dapat dieksekusi ketika suatu event terjadi,
seperti bila pengguna mengklik pada sebuah elemen HTML.
▪ Untuk mengeksekusi kode ketika pengguna mengklik elemen,
tambahkan kode JavaScript untuk atribut event HTML:
onclick=JavaScript
HTML DOM – EVENTS
Contoh event HTML:
▪ Ketika pengguna mengklik mouse
▪ Ketika sebuah halaman web telah dimuat
▪ Ketika gambar telah dimuat
▪ Ketika mouse bergerak di atas elemen
▪ Ketika sebuah field input diubah/diganti
▪ Ketika form HTML di-submit
▪ Ketika seorang pengguna menekan kunci di keyboard
HTML DOM – EVENTS
HTML DOM – EVENTS
Dalam contoh ini, fungsi ini dipanggil dari event handler:
HTML DOM – EVENTS
HTML Event Atribut
▪ Untuk menetapkan event untuk elemen HTML Anda dapat
menggunakan atribut event.
HTML DOM – EVENTS
HTML Event Attribut
HTML DOM – EVENTS
Menetapkan Event Menggunakan HTML DOM
▪ HTML DOM memungkinkan Anda untuk menetapkan event
untuk elemen HTML menggunakan JavaScript:
HTML DOM – EVENTS
Menetapkan Event Menggunakan HTML DOM
HTML DOM – EVENTS
Onload dan onunload Event
▪ Event onload dan onunload dipicu ketika pengguna memasuki
atau meninggalkan halaman.
▪ Event onload dapat digunakan untuk memeriksa jenis browser
pengunjung dan versi browser, dan memuat versi yang tepat dari
halaman web berdasarkan informasi.
▪ Event onload dan onunload dapat digunakan untuk menangani
cookie.
HTML DOM – EVENTS
HTML DOM – EVENTS
Event onchange
▪ Event onchange sering digunakan dalam kombinasi
dengan validasi field input.
▪ Berikut adalah contoh bagaimana menggunakan
onchange tersebut. Huruf upperCase() fungsi akan
dipanggil ketika pengguna mengubah konten sebuah
field input.
HTML DOM – EVENTS
Event onchange
TERIMA KASIH
Download