Belajar Javascript
Belajar Javascript
<SCRIPT LANGUAGE="JavaScript">
<!-- Menyembunyikan script terhadap browser non-JavaScript
document.write("Hello world.")
// akhir dari penyembunyian -->
</SCRIPT>
</HEAD>
</HTML>
Contoh :
<SCRIPT LANGUAGE="JavaScript">
</SCRIPT>
Contoh :
<HTML>
<HEAD>
<SCRIPT LANGUAGE="JavaScript">
<!-- Menyembunyikan script terhadap browser non-JavaScript
document.write("Hello world.")
// akhir dari penyembunyian -->
</SCRIPT>
</HEAD>
</HTML>
Hasil:
Contoh:
<FORM>
<INPUT TYPE=BUTTON VALUE="Coba Klik" onClick="alert('Hello world')">
</FORM>
Hasil:
<SCRIPT LANGUAGE="JavaScript">
<!-- Start of scroller script
var scrollCounter = 0;
var scrollText = "Teks yang anda inginkan, misalnya Viva
Indoprog";
var scrollDelay = 70;
var i = 0;
function Scroller()
{
window.status = scrollText.substring(scrollCounter++,
scrollText.length);
if (scrollCounter == scrollText.length)
scrollCounter = 0;
setTimeout("Scroller()", scrollDelay);
}
Scroller();
// End of scroller script -->
</SCRIPT>
</HEAD>
<BODY>
<H1>Coba perhatikan status bar anda</H1>
</BODY>
</HTML>
Walaupun memiliki tipe data yang sedikit, tetapi cukup untuk unjuk kerja
JavaScript. Perlu diperhatikan bahwa pada JavaScript tidak ada perbedaan
antara integer dengan real, keduanya dimasukkan pada tipe yang sama yaitu
number. JavaScript tidak menyediakan tipe data khusus untuk data tanggal.
Tetapi memiliki beberapa fungsi dan objek tanggal (date) yang dapat
digunakan untuk melakukan manipulasi data tanggal.
Mendefinisikan Variabel
h9224
_nama
Catatan
JavaScript membedakan huruf besar dan kecil (case sensitif),
sehingga harus diwaspadai oleh programmer, penulisan indoprog
adalah berbeda dengan Indoprog bagi JavaScript.
Batasan lainnya dalam pemberian nama variabel adalah tidak boleh sama
dengan cadangan kata pada JavaScript. Tabel 1 adalah daftar dari cadangan
kata (Reserved Word) pada JavaScript.
Variabel dalam JavaScript dapat menyimpan semua tipe data yang sah, dan
tidak diperlukan suatu deklarasi tipe data. Pada script yang sama, suatu
variabel dapat di set ke type data yang berbeda dalam suatu deklarasi
tunggal. Berikut ini deklarasi variabel yang sah:
temperatur =
JavaScript adalah bahasa script yang dinamis. Hal ini berarti bahwa tipe data
pada Javascript tidak baku tetapi dapat berubah dari suatu tipe ke tipe yang
lain sesuai dengan kebutuhan.
Sebagai contoh, anda dapat menyatakan myData = 10; pada suatu baris
initialisasi, dan baris berikutnya, menyatakan myData = "Hello World!"
yang membuat tipe myData menjadi suatu string. Java Script akan secara
otomatis mengubah tipe data berdasarkan ekspresi yang ditentukan. Jadi jika
anda menyatakan myData = "10" - 2;, maka anda akan bertanya mengapa
Javascript tidak mengkonversi 2 menjadi "2" dan
menghasilkan "102", jawabanya adalah karena operator - tidak ditujukan
untuk pemakaian pada string sehingga "10" - 2 tidak memiliki arti sama
sekali. Berikut ini akan membawa kita kepada suatu situasi yang lebih
menarik. Operator + dinyatakan untuk pemakaian pada numerik dan string.
Jadi akankah 10 + "20"mengembalikan nilai 30 (10+20) atau "1020" ("10"
+ "20"). Hal ini tentu saja akan membingungkan anda dengan pemakaian
operator +, jawabannya adalah Javascript akan selalu mengkonversi segala
sesuatu ke string sebelum melakukan evaluasi, sehingga 10 + "20" adalah
sama dengan "10" + "20" dan hasilnya adalah "1020".
• variabel Global
• variabel Local
TIP
Untuk memastikan fungsi mendapatkan nilai yang benar dari suatu
variabel global, deklarasikan semua variabel global tersebut pada
awal dari script.
Literal
Sebagai lawan dari variabel adalah literal yang merupakan baku yang
digunakan dalam JavaScript. JavaScript mendukung literal-literal berikut:
• Integer literal
• Floating point literal
• Boolean literal
• String literal
• Special character
Integer dapat dalam basis desimal (basis 10), hexadesimal, dan oktal. Suatu
nilai desimal adalah semua angka yang tidak diawali dengan nol (seperti 4,
89, atau 57). Suatu angka yang diawali dengan nol, adalah berbasis oktal
(seperti 04, 065, atau 0145). Suatu bilangan dinyatakan dalam basis
hexadesimal diawali dengan 0x atau 0X (seperti 0xff, 0X44, atau 0xAE).
Suatu literal floating-point terdiri dari komponen: suatu desimal bulat, suatu
decimal berkoma (.), suatu desimal pecahan, dan eksponen. (seperti 1.23 or
44.6389) atau dalam notasi scientific (3.6E-8, .4E12, or -2.7E12). Setiap
literal floating-point literal minimal memiliki satu digit dengan satu desimal
atau eksponen.
Contoh :
<FORM>
<INPUT TYPE=BUTTON VALUE="Coba Klik"
onClick="alert('Hello world')">
</FORM>
Literal string dapat juga mengandung karakter khusus untuk kendali baris
Table 2 adalah daftar dari karakter khusus dan fungsi-fungsinya.
Form feed \f
Newline \n
Carriage return \r
Tab \t
• Assignment operator
• Arithmetic operator
• Bitwise operator
• Logical operator
• Comparison operator
• String operator
atau
operator operand
Sebagai contoh ekspresi mengunakan operator unari adalah ++y atau y++.
Catatan
Bagi programmer C language, tentu saja operator unari bukan sesuatu
yang asing, tetapi bagi programmer dari latarbelakang Basic dan
Pascal, penulisan y++ adalah sama dengan y = y + 1.
Assignment Operator
Operator pemberi nilai (=) adalah suatu operator binari yang digunakan
untuk memberi nilai ke operand di sisi kiri (biasanya berupa suatu variabel)
yang didasarkan pada nilai operand sebelah kanan (seperti NamaDepan =
"Hendra" atau x = y * 9). Table 3 adalah daftar singkat operator pemberi
nilai.
Catatan
Bagi yang tidak familiar dengan pemrograman C, hati-hati dengan
perbedaan antara assignment operator (=) dan comparison operator
(==)
Arithmetic Operator
• Bitwise AND (&), akan mengembalikan nilai dari logika AND antara
sepasang bit. Sebagai contoh , 0x0f & 0x0amengembalikan 0x0a.
• Bitwise OR (|), akan mengembalikan nilai dari logika OR antara
setiap pasangan dari bit. Sebagai contoh, 0x05 |
0x0amengembalikan 0x0f.
• Bitwise XOR (^), akan mengembalikan nilai dari logika exclusive OR
between antara tiap pasangan bit. Sebagai contoh,0x0f ^
0x0a mengembalikan 0x05.
• Shift left (<<), akan mengeser bit ke kiri dengan jumlah tertentu. Bit
yang melewati batas kiri akan diabaikan, dan suatu bit nol akan
digeser dari kanan. Sebagai contoh, 0x0f << 2 mengembalikan 0x3c.
• Sign propagating shift right (>>) mempertahankan bit tanda dari nilai
ketika melakukan geser ke kanan sesuai dengan jumlah yang
ditentukan. Bit yang tergeser melewati bata kanan akan diabaikan,
kecuali bit tanda, bit nol akan digeser dari kiri.. Sebagai contoh, 10 >>
2 mengembalikan 2 dan -10 >> 2 mengembalikan -2.
• Zero-fill right shift (>>>) sama seperti >>, cuma tidak
mempertahankan bit tanda ketika dilakukan pergeseran sesuai dengan
jumlah yang ditentukan.
Logical Operator
• Equal (==)
• Not equal (!=)
• Greater than (>)
• Greater than or equal to (>=)
• Less than (<)
• Less than or equal to (<=)
Catatan
Bagi programmer C language, tentu saja comparison operator (==)
bukan sesuatu yang asing, tetapi bagi programmer dari latarbelakang
Basic dan Pascal, penulisan = adalah tidak sama dengan ==.
String Operator
Operator string (+) mengabung dua nilai string dan mengembalikan satu
string dimana merupakan hasil gabungan dari keduanya. Sebagai contoh :
"Java" + "Script"
Menghasilkan
"JavaScript"
Operator shorthand += mengabung string kiri dengan string dikanan operand
dan memberikan nilai baru pada operand disebelah kiri.
Urutan operasi
Dalam ekspresi yang kompleks dimana melibatkan lebih dari satu operator,
urutan operasi dari operator menentukan nilai hasil evaluasi. Dengan
menggunakan tanda kurung, programmer dapat mengatur aturan tersebut.
Table .4 adalah urutan prioritas operasi dari yang paling rendah sampai yang
paling tinggi.
Keterangan Operator
Assignment = += -= *= /= %= <<= >>= >>>= &= ^= |=
Conditional ?:
Logical OR ||
Bitwise OR |
Bitwise XOR ^
Equality == !=
Relational < <= > >=
Bitwise shift << >> >>>
Addition/subtraction +-
Multiply/divide */%
Negation/increment ! ~ - ++ -
Call, member () []
Perintah kondisi
pernyataan1 }
[else {
pernyataan2}]
status = true
if (j != n) j = 0 }
else j = n
Perhatian
Bagi programmer C harus berhati-hati dengan evaluasi kondisi pada
JavaScript. Suatu kondisi numerik yang mengasilkan nol adalah tidak
sama dengan suatu Boolean true pada JavaScript, dan sebaliknya
suatu nilai bukan nol tidak sema dengan Boolean false. Pada
JavaScript hasil dari suatu kondisi harus data type Boolean.
Jika hanya suatu perintah tunggal, tanda kurawal tidak diperlukan. Contoh
berikut adalah perintah yang benar:
if (a==b) j=0
else j=1
Perintah Perulangan
JavaScript mendukung dua struktur loop; perintah for dan perintah while.
Untuk control pada struktur loop, JavaScript menyediakan
perintah break dan continue.
Perintah for
Perintah for pada JavaScript sama dengan yang ada di Java dan C.
Perintah for mengulang suatu loop sampai kondisi menghasilkan evaluasi
true atau loop keluar dengan perintah break . Syntax untuk
perintah for adalah sebagai berikut :
for ([ekspresi-awal;] [kondisi;] [ekspresi-penambah]) {
pernyataan
<HTML>
<HEAD>
<SCRIPT LANGUAGE="JavaScript">
sq=i*i
</SCRIPT>
</HEAD>
<BODY>
</BODY>
</HTML>
Hasil :
number: 1 square: 1
number: 2 square: 4
number: 3 square: 9
number: 4 square: 16
number: 5 square: 25
number: 6 square: 36
number: 7 square: 49
number: 8 square: 64
number: 9 square: 81
number: 10 square: 100
number: 1 square: 1
number: 2 square: 4
number: 3 square: 9
number: 4 square: 16
number: 5 square: 25
number: 6 square: 36
number: 7 square: 49
number: 8 square: 64
number: 9 square: 81
number: 10 square: 100
Perintah while
Perintah while terus mengulangi loop selama kondisi memiliki nilai true.
Syntax untuk perintah while adalah sebagai berikut :
while (kondisi) {
pernyataan
Test kondisi terjadi pada perulangan while yang pertama kali dan pada akhir
dari setiap loop. Ketika hasil test mengembalikan false, kendali dilewatkan
ke perintah berikutnya setelah loop. Perintah for yang diubah ke
suatu while loop.
Contoh:
<HTML>
<HEAD>
<SCRIPT LANGUAGE="JavaScript">
i=1
while (i<=10) {
sq=i*i
i++
</SCRIPT>
</HEAD>
<BODY>
</BODY>
</HTML>
Hasil:
number: 1 square: 1
number: 2 square: 4
number: 3 square: 9
number: 4 square: 16
number: 5 square: 25
number: 6 square: 36
number: 7 square: 49
number: 8 square: 64
number: 9 square: 81
number: 10 square: 100
number: 1 square: 1
number: 2 square: 4
number: 3 square: 9
number: 4 square: 16
number: 5 square: 25
number: 6 square: 36
number: 7 square: 49
number: 8 square: 64
number: 9 square: 81
number: 10 square: 100
Perintah break
while (i<10) {
if (i==3)
break
i++
Perintah continue
while (i<10) {
if (i==3)
continue
i++
Perintah function
statements
Contoh:
<HTML>
<HEAD>
<SCRIPT LANGUAGE="JavaScript"
function DisplayIt(LineToDisplay) {
document.write(LineToDisplay + "<BR>")
</SCRIPT>
</HEAD>
<BODY>
<SCRIPT LANGUAGE="JavaScript"
<!-- hide it
LineToDisplay("Hello World")
</SCRIPT>
</BODY>
</HTML>
TIP
Karena browser membaca perintah tersebut diapit
oleh <HEAD>...</HEAD> duluan; adalah praktek yang baik untuk
memesan semua variabel global dan semua fungsi padaHEAD dari
dokumen. Hal ini mencegah kesalahan seperti non-initialized
variables dan undefined functions
Argumen dari suatu fungsi dapat berupa sembarang tipe data atau objek
JavaScript. Objek array functionName.argument[i]
dan functionName.arguments.length mengandung nilai jumlah argumen
yang dikirim ke fungsi, argumen acuan dengan mendeklarasikan nama-nama
variabel. Hal ini memungkinkan sejumlah argumen dilewatkan ke fungsi
sebagai suatu argument array. Contoh berikut menunjukkan pemakaian dari
suatu variable argument list.
Contoh :
<HTML>
<HEAD>
<SCRIPT LANGUAGE="JavaScript">
<!-- menyembunyikan
UnorderList="UL"
document.write("LI" + DisplayList.arguments[i])
return true
</SCRIPT>
</HEAD>
<BODY>
<SCRIPT LANGUAGE="JavaScript"
<!-- menyembunyikan
document.write("<P>List Display</P>")
else
</SCRIPT>
</BODY>
</HTML>
Contoh diatas menggambarkan beberapa hal yang penting dari suatu fungsi.
Suatu variabel global diinisialisasi pada bagian<HEAD>.
Perintah var mendeklarasikan i sebagai suatu variabel lokal pada fungsi.
Juga ditunjukkan bagaimana perintah returndapat digunakan untuk
memastikan fungsi dijalankan dengan baik. Perintah return juga dapat
mengembalikan string atau nilai numerik, sebagaimana yang ditunjukkan
oleh contoh dibawah ini:
function RetExam(a, b) {
var x=0
x = a+b
return x
TestResult=RetExam(5, 7)
Komentar
• Komentar satu baris yang diawali dengan suatu double slash (//)
• Komentar banyak baris yang diawali dengan suatu /* dan diakhiri
dengan suatu */
Komentar banyak baris mengikuti aturan pada C dan dapat digunakan untuk
menandai perintah JavaScript, sebagaimana yang ditunjukkan oleh contoh
sebelumnya, adalah sutu komentar HTML, baris terakhir membutuhkan dua
slash untuk menjaga JavaScript dapat menginterprestasikan baris tersebut.
Dibuat oleh [email protected]
Medan - Sumatera Utara
Indonesia
mydog.age=5
mydog.weight=25
mydog["age"]=5
mydog["weight"]=25
mydog[1]=5
mydog[2]=25
Defining Metodes
Perintah for...in
statements
return result
Pada beberapa situasi suatu objek perlu dibuat acuan beberapa kali.
Perintah with membuat acuan ke suatu objek default yang berada dalam
kurung. Tata cara penulisannya adalah sebagai berikut:
with (ObjekName) {
statements
var x =
with (Math) {
r = p / (1 - cos(a))
Operand new
Untuk suatu tipe objek user-defined, operand new berfungsi membuat suatu
instance baru dari objek. Tata cara penulisannya adalah sebagai berikut:
ObjekName = new ObjekType(param1 [, param2,] É [, paramN])
this mengacu pada objek yang sekarang. Pada bagian selanjutnya akan
ditunjukkan bagaimana pemakaian kata kunci ini dalam penulisan function
dan metode.
this.breed = breed;
this.age = age;
this.weight = weight;
Selain type data yang umum (string, numeric, and Boolean), objek yang lain
dapat juga menjadi properti dari suatu objek. Contoh menambah suatu
nomor izin pada objek jenis dog, nomor izib ini juga mengacu pada objek
lain.
function doglicense(owner, phone_number) {
this.owner = owner;
this.phone_number = phone.number;
this.breed = breed;
this.age = age;
this.weight = weight;
this.license = license;
CATATAN
Jika suatu property baru ditambahkan pada suatu objek tanpa
mengubah jenis objek, properti tambahan tersebut hanya berpengaruh
pada objek tersebut dan bukan pada semua instances dari objek jenis
yang sama.
CATATAN
Suatu variabel string atau suatu string literal adalah suatu objek string.
Metode string adalah asosiasi dengan objek ini, dan akan didiskusikan
pada bagian "Objek dan fungsi built-in".
Mendefinisikan Array
Tidak seperti bahasa lainnya, Java script tidak memiliki suatu tipe data
array. Tetapi bagaimanapun, fungsi yang sama dapat dengan membentuk
suatu objek untuk melakukan emulasi suatu array. Langkah pertama untuk
mendefinsikan suatu objek array:
function MakeArray(n) {
this.length = n;
this[i] = 0;
return this
Ketika anda memberikan nilai pada suatu elemen array, hal tersebut
menyerupai memberi nilai pada suatu type data array. Perbedaannya adalah
array ini dimulai dari satu dan bukan nol, karena nol mendefinisikan
panjang dari array:
ExmpArray[1] = "test1"
Objek String
Suatu string yang dipetik adalah suatu variabel string atau suatu properti
string dari suatu objek, segala sesuatu yang ditempatkan diantara petik
adalah suatu string. Ada dua cara untuk menggunakan suatu objek string:
1. stringName.propertyName
2. stringName.metodeName(parameters)
StringLength = mydog.name.length;
Objek Math
1. Math.propertyName
2. Math.metodeName(parameters)
Contoh :
<SCRIPT LANGUAGE="JavaScript">
<!-- Begin
var ran
ran = Math.round(Math.random()*50000)
alert("Anda adalah pengunjung yang ke " + ran + ".")
// End -->
</SCRIPT>
Objek Date
Objek Date membutuhkan suatu instance dari objek Date yang berkaitan
dengan pemakaian metode-metodenya. Instance dapat berupa suatu objek
baru atau properti dari objek yang ada. Ada empat cara untuk membentuk
instance baru:
dateObjekName = new Date()
Membentuk suatu himpunan dari tanggal dan waktu ke tanggal dan waktu
sekarang. Mengosongkan time berarti memberinya nilai nol. Karena
objek Date tidak mengandung properti apa-apa, hanya ada satu format
untuk metode Date:
dateObjekName.metodeName(parameters)
Pengecualiaanya adalah UTC dan metode parse, yang mana adalah metode
status dan pemakaiannya
Date.UTC(parameters)
Date.parse(parameters)
Selain dapat menerima berbagai informasi dari Objek Date, metode pada
Tabel 7 menunjukkan bagaimana mengubah informasi date.
Dua metode tambahan yang dapat digunakan untuk melakukan konvesi data
tanggal ke suatu nilai string, adalah sebagai berikut:
Objek Date juga memiliki dua metode statik untuk menangani string; hal
tersebut memiliki format Date.metode(). Metode-metode ini adalah sebagai
berikut:
Contoh :
<SCRIPT LANGUAGE="JavaScript">
<!-- Begin
var date=time.getDate();
var year=time.getYear();
// End -->
</SCRIPT>
Hasil :
Agustus 2, 2009
Fungsi Built-In
var y =
document.write(eval(z), "<BR>")
Objek Netscape
Sebagai tambahan kepada objek-objek JavaScript dan metode, Pengembang
halaman Web dapat mengakses objek-objek dan metode dalam Netscape
browser. Bagian ini akan membahas Objek Netscape Navigator dan
metode-metodenya.
Hirarki ini penting untuk membuat acuan kepada Objek dan propertinya.
Turunan dari suatu Objek adalah properti dari objek orang tuanya. Karena
semua objek adalah merupakan turunan dari objek window , sehingga
objek window sendirinya tidak memiliki acuan ke objek maupun properti
apapun. Tetapi bagaimanapun, acuan ke suatu dokumen pada window lain
membutuhkan tambahan nama window kepada Objek acuan-nya.
Hal yang penting dari HTML Layout
Sesuai dengan hal ini, maka instance dari suatu objek ada setelah proses
dilakukan terhadap baris HTML yang menghasilkan instance tersebut.
Dengan kata lain JavaScript tidak dapat mengacu pada suatu objek HTML
seperti form, atau menjalankan suatu fungsi sampai browser memproses
perintah tersebut. Sebagai contoh, JavaScript tidak dapat mengacu pada
suatu objek formsampai browser memproses HTML untuk form tersebut.
Demikian juga dengan proses perubahan properti, setelah browser
menggunakan properti dalam menghasilkan layout window, maka
perubahan properti setelah itu tidak memiliki efek terhadap tampilannya.
Objek Window
Objek window adalah orang tua dari semua Objek. Hal tersebut termasuk
semua window dan frame yang berada dalam suatu. Ketika browser mulai
memuat suatu dokumen HTML, hal tersebut dimulai dengan suatu instance
dari objek window. Jika dokumen HTML membuat suatu frame, informasi
dari frame tersebut tersimpan dalam suatu objek frame array. Dengan kata
lain, membuka suatu window akan menghasilkan suatu anak dari objek
window. Kehebatan dari JavaScript adalah terletak pada kemampuan untuk
melakukan utilisasi properti dan metode dari objek window.
• objek Location
• objek History
• objek Document
Diantara ketiga objek tersebut, document adalah objek yang paling penting
dalam hirarki tersebut. Objek document itu sendirinya mengacu kepada objek
lain. Hal lain yang penting dari hal ini adalah sebagai berikut:
• objek form
• objek anchor
• objek link
Objek location
Properti dari Objek location mengacu pada bagian individual dari URL:
protocol//hostname:port pathname search hash
CATATAN
Objek location dan properti location dari objek dokumen
(document.location) memiliki tujuan yang berbeda.
Objek location dapat berubah, tetapi propertilocation tidak dapat
berubah.
CATATAN
Walaupun JavaScript memungkinkan modifikasi pada properti
individual, praktek pemrograman yang umum adalah mengubah
properti href. Pendekatan ini mencegah hasil error dari browser
sebelum akses URL belum berubah secara keseluruhan.
Contoh :
<a href="" onmouseover="parent.location='http://www.indoprog.com/'">
Langsung ke homepage Indoprog</A>
Objek History
Hasil :
Back
Contoh 2 :
<HEAD>
<SCRIPT LANGUAGE="JavaScript">
<!-- Begin
var agree=confirm("Apakah anda yakin untuk melanjutkan PROSES ?");
if (agree)
document.write("");
else
history.go(-1); // Kembali ke halaman sebelumnya
// End -->
</SCRIPT>
</HEAD>
Objek document
CATATAN
String yang diperlukan untuk mengubah properti color adalah dalam
formatdocument.colorProperty =
"#RRGGBB" ataudocument.colorproperty="colorName". Property
color lainnya didefinisikan dalam tag <HEAD></HEAD> yang
mendahului tag <BODY>.
Contoh 1:
<FORM>
<SELECT onChange=
"document.bgColor=this.options[this.selectedIndex].value">
<OPTION VALUE="40E0D0"> Torquoise
<OPTION VALUE="2E8B57"> Sea Green
<OPTION VALUE="87CEEB"> Sky Blue
<OPTION VALUE="F4A460"> Sandy Brown
<OPTION VALUE="FFF0F5"> Lavender Blush
<OPTION VALUE="FF1493"> Deep Pink
<OPTION VALUE="FFFFFF" SELECTED> White
</SELECT>
</FORM>
Hasil :
Contoh 1:
<SCRIPT LANGUAGE="JavaScript">
<!--
document.write("Update terakhir :");
document.write(document.lastModified);
// -->
</SCRIPT>
Hasil:
Contoh 2:
<form name=404form>
<script language="JavaScript">
<!-- Begin
var from = document.referrer;
document.write("<input type=text name=referrer value='" + from +
"'>");
// End -->
</script>
</form>
Hasil :
TIP
Sebelum menggunakannya untuk memberikan nilai
seperti location.hash, adalah mungkin untuk memeriksa keabsahan
dari anchor dengan membandingkannya dengan panjang array; anda
menggunakan bilangan berurut untuk menentukan anchors
Objek link
Array link mengandung Objek link yang didefinisikan oleh tag <A></A> atau
dengan metode link. Array tersebut meliputi objek untuk
atribut HREF dan NAME. Dengan tambahan ke atribut TARGET, properti dari
masing-masing Objek link adalah identik dengan Objek location.
CATATAN
link array adalah suatu array read-only. Entries tambahan
ditambahkan dengan tag<A></A>. Metode link melakukan
modifikasi terhadap isi dalam array link
Objek link memiliki dua event handler: onClick dan onMouseOver. Bagian
ini disebut sebagai "The Form Objek," pada bagian selanjutnya di bab ini,
menggambarkan bagaimana mengunakan event handler.
Properti cookie
Property cookie mengandung suatu nilai string dari isi cookier dari
file cookies.txt untuk dokumen tersebut. Untuk suatu keterangan lengkap
tentang bagaimana menggunakan cookies, lihat bagian Netscape cookie
specification. Metode substring,charAt, indexOf, dan lastIndexOf dapat
digunakan untuk memisahkan string cookie.
The document Objek Metodes
• document.write()
• document.writeln()
• document.open()
• document.close()
• document.clear()
Contoh :
<SCRIPT>
document.write(Date()+".")
</SCRIPT>
Hasil :
CATATAN
Sekarang, tidak dimungkinkan lagi untuk mencetak tulisan apapun
dengan JavaScript melalui metode write ataupun writeln
Stream tersebut tetap terbuka sampai browser menemukan
metode document.close(). document.close() memaksakan isi dari stream
ditampilkan. Metode document.clear() membersihkan isi dari window.
Contoh :
<SCRIPT LANGUAGE="JavaScript">
<!-- Begin
// End -->
</script>
Objek Form
HTML tag <FORM></FORM> adalah fasilitas input data oleh pemakai, dan
output data variabel kepada pemakai. Input oleh pemakai memiliki efek
pemilihan pada sisi klien yang dapat dikirm ke server. Pada sisi lain, data
variabel seperti marquees dapat ditampilkan pada form. Pada sisi input,
event handle adalah fasilitas untuk membangkitkan rutin JavaScript untuk
melakukan aktifitas pada proses edit data seperti validasi. Pada sisi output,
JavaScript memegang peranan penting dalam mengatur bagaimana data
ditampilkan.
penanganan events
Event adalah hasil dari aksi pemakai, seperti klik pada suatu tombol mouse,
checking pada suatu kotak, dan pengiriman form. Penanganan Event
didefinsikan dalam tag HTML sepanjang JavaScript berkaitan dengan event
tersebut. Berikut ini adalah contoh yang merupakan kode dari suatu
penanganan event.
<INPUT TYPE="button" VALUE="Submit" onClick="validate(this.form)">
Pada contoh sebelumnya, kata kunci this mengacu pada objek tersebut,
yang mana adalah objek button. Dengan menyebutkanthis.form, adalah
acuan ke objek form yang mengandung button tersebut. Ketika contoh
sebelumnnya menjalankan suatu fungsi, perintah JavaScript juga sah. Kalau
lebih dari satu perintah, tiap perintah harus dipisahkan dengan suatu titik
koma.
TIP
Praktek pemrograman yang baik adalah menggunakan fungsi karena
mereka membuat kode lebih mudah dibaca dan dapat digunakan
kembali.
NOTE
Sampai suatu dokumen HTML selesai di muat ke window yang
mengandung tag<BODY></BODY>, suatu window tidak mengandung
penanganan event.
Berikut ini adalah daftar dari penanganan event yang didukung oleh
JavaSCript:
Contoh:
<SCRIPT LANGUAGE="JavaScript">
<!-- menyembunyikan kode dari browser non-js
function periksa()
{
formObj = document.contoh;
if ((formObj.nama.value == "") ||
(formObj.umur.value == "") ||
(formObj.lahir.value == ""))
{
alert("Anda tidak mengisi seluruh field.");
return false;
}
else
return true;
}
// akhir dari penyembunyian -->
</SCRIPT>
Hasil:
Nama Anda :
Umur :
Tgl. Lahir:
Submit Query Reset
FORM>.
Untuk JavaScript, hal tersebut adalah suatu read-only array yang
membentuk properti berikut :
Berikut ini adalah arti yang sah dari pengalamatan bentuk object ::
formName.propertyName
formName.metodeName(parameters)
forms[index].propertyName
forms[index].metodeName(parameters)
document.formName.submit()
Objek element
Objek elemen berpengaruh pada isi elemen dalam tag <FORM></FORM>. Tabel
9 menperlihatkan elemen objek dan properti-nya.
Element Properti
object
button name, value
checkbox name, value, checked, defaultChecked
hidden name, value
password name, value, defaultValue
radio name, value, checked, defaultChecked, length
reset name, value
select name, length, options array, selectedIndex
submit name, value
text name, value, defaultValue
textarea name, value, defaultValue
Metode element
Contoh :
<form>
F:
<input type="text" name="F" value="32"
onChange="C.value = 100/(212-32) * (this.value - 32 )"><br>
C:
<input type="text" name="C" value="0"
onChange="F.value = (212-32)/100 * this.value + 32 "><br>
</form>
Hasil :
F:
C:
Dibuat oleh [email protected]
Medan - Sumatera Utara
Indonesia
Contoh:
<A HREF="http://www.indoprog.com" onMouseOver="window.status='Klik
disini untuk keterangan lebih lengkap'; return true;"
onMouseOut="window.status=''; ">Klik disini</A>
Hasil:
Klik disini
self.propertyName
top.propertyName
parent.propertyName
windowVar.propertyName
propertyName
location=yes|no
directories=yes|no
status=yes|no
menubar=yes|no
scrollbars=yes|no
resizable=yes|no
width=pixels
height=pixels
• Jika tidak ada yang ditentukan, maka semuanya bernilai true. Jika
salah satu ditentukan, maka semua yang lain menjadi false. Jika salah
satu di tentukan tanpa nilai, maka nilainya adalah true.
NOTE
Setelah terbuat, window adalah tidak terikat pada parent window, jika
parent window di tutup, window yang dibuat tersebut tetap
buka.Event onUnLoad menangani penutupan window yang dibuat
• prompt("message" [, inputDefault]). metode prompt menampilkan
suatu prompt dialog box dengan suatu message, suatu input field, dan
tombol OK, dan sebuah tombol Cancel. inputDefault adalah suatu
string, integer, atau property dari suatu object yang mana mewakili
nilai default untuk inout field. Jika inputDefault tidka ditentukan,
input fied menampilkan nilai <undefined>.
• timeoutID=setTimeout(expression, msec). Dengan metode ini,
evaluasi dari ekspresi adalah jumlah delay dalam
milidetik. timeoutID adalah hanya digunakan oleh
metode clearTimeout.
• clearTimeout(timeoutID). Metode ini membatalkan time-out yang
ditentukan oleh metode setTimeout.
self.metodeName(parameters)
top.metodeName(parameters)
parent.metodeName(parameters)
windowVar.metodeName(parameters)
metodeName(parameters)
PERHATIAN
Metode open() dan close() perlu mengunakan
acuan window.open() danwindow.close() untuk menghindari scope
dengan document.open() dandocument.close()
CATATAN
Frames memiliki semua properti dari suatu window. Seluruh hirarki
untuk struktur frame adalah sama dengan struktur window.
Contoh :
<html>
<head>
<script language="JavaScript">
if (top.location != this.location)
<title>Tutorial JavaScript</title>
<frameset cols=175,*>
</frameset>
</head>
</html>
file daftar.html
<html>
<head>
<script language="JavaScript">
function buka(x)
{
top.frames[1].location=x;
return false
}
</script>
</head>
<body>
<h1>Daftar Isi</h1>
<a href="" onclick="return buka('topik1.html')">Memasukan
JavaScript ke dalam HTML</a><hr>
<a href="" onclick="return buka('topik2.html')">Variabel dan
Literal</a><hr>
<a href="" onclick="return buka('topik3.html')">Ekspresi dan
Operator</a><hr>
<a href="" onclick="return buka('topik4.html')">Struktur Kendali
dan Fungsi</a><hr>
<a href="" onclick="return buka('topik5.html')">Dasar dari
Objek</a><hr>
<a href="" onclick="return buka('topik6.html')">Objek dan Fungsi
built-in</a><hr>
<a href="" onclick="return buka('topik7.html')">Objek
netscape</a><hr>
<a href="" onclick="return buka('topik8.html')">Objek form</a><hr>
<a href="" onclick="return buka('topik9.html')">Window dan
Frame</a><hr>
</body>
</html>
Untuk menampilkan sesuatu pada status bar ketika mouse pointer digerakan
melalui link, anda perlu menambah kode berikut :
<A HREF="mylink.htm" onMouseOver="window.status='Klik disini untuk
mengetahui lebih jauh tentang saya'; return true;"
onMouseOut="window.status=''; ">Klik disini</A>
Kode diatas akan menghasilkan suatu link Klik disini. Coba gerakan mouse
pointer melaluinya, mudah bukan ?
Sisipkan kode berikut pada bagian dokumen HTML anda yang akan
menampilkan informasi Last update. Perhatikan bahwa script diketik
diantara tag komentar HTML <!-- ... -->, tujuannya supaya script tersebut
tersembunyi dari browser non-JavaScript, dengan demikian tidak
menimbulkan kesalahan pada browser non-JavaScript tersebut.
Catatan : biasakan mengetik script anda diantara tag komentar HTML <!-- ..
-->.
Hal ini tentu saja akan menjadi kejutan bagi pengunjung halaman anda :-).
Bagaimana jika kita ingin menampilkan suatu kotak pesan ketika user
melakukan klik pada suatu link Anda dapat mencoba klik disini. Untuk
memahami apa sebenarnya yang terjadi, coba simak script berikut :
<A HREF="JavaScript: alert('pesan anda disini.')">
Anda juga dapat membuat suatu pesan ditampilkan tombol ditekan. Coba
yang berikut ini:
<FORM>
<INPUT TYPE=BUTTON VALUE="Klik disini"
onClick="alert('pesan anda disini')">
</FORM>
Catatan
Untuk menutup jendela browser yang sedang aktif anda dapat menggunakan
metode close pada objek window.
Contoh :
<A HREF="javascript:window.close()">tutup</A>
Coba klik tutup untuk menutup jendela ini.
Anda dapat membuat suatu fungsi yang mengambil nilai item yang dipilih
pemakai, dan membuka halaman yang diinginkan
function buka() {
var pilih = eval(document.dropdown.site.selectedIndex);
if( (pilih > 0) && (pilih < 7) ) {
var bagian=new BuatArray( '',
'http://indoprog.terrashare.com/tutor/html/index.html',
'http://indoprog.terrashare.com/tutor/javascript/index.html',
'http://indoprog.terrashare.com/tutor/asp/index.html',
'http://indoprog.terrashare.com/tutor/php/index.html',
'http://indoprog.terrashare.com/tutor/perl/index.html');
this.location=buka[pilih];
}
}
//-->
</SCRIPT>
<FORM NAME="dropdown">
<SELECT NAME="site" onChange='buka();' ALIGN="left">
<OPTION SELECTED>Pilih tutorial yang diinginkan
<OPTION>HTML
<OPTION>JavaScript
<OPTION>ASP
<OPTION>PHP
<OPTION>Perl
</SELECT>
</FORM>
Membagi Jendela Browser menjadi frame, dan klik link pada pilihan
diframe kiri akan mengupdate isi frame kanan.
<title>Tutorial JavaScript</title>
<frameset cols=175,*>
</frameset>
</head>
</html>
Pada contoh diatas, pada frame kiri akan dibuka suatu html dengan nama
menu.html, dan sebelah kanan akan diaktifkan topik1.html, dan isi dari
menu.html adalah sebagai berikut :
menu.html
<html>
<head>
<script language="JavaScript">
function buka(x)
{
top.kanan.location=x; // membuka halaman x pada frame kanan
return false
}
</script>
</head>
<body>
<h1>Daftar Isi</h1>
</body>
</html>
Pada menu.html diatas, kita menggunakan event onclick pada masing-
masing link yang akan memanggil suatu fungsi buka yang diikuti dengan
suatu parameter yang berupa nama dokumen html target. Pada fungsi buka,
kita menggunakan properti location untuk frame kanan membuka halaman
bersangkutan.
Pengenalan
JavaScript adalah suatu bahasa script yang menyerupai cara penulisan pada
Java. Kode JavaScript dituliskan diantara tag HTML yang akan
diinterpretasikan oleh browser klien. Java script akan membuat halaman
Web anda menjadi lebih interaktif. Menggunakan JavaScript,
memungkinkan kustomisasi terhadap dokumen HTML pada saat diakses
dengan menulis melalui penanganan event terhadap elemen-elemen dalam
halaman tersebut, memeriksa data form pada sisi klien dan melakukan
perhitungan pada sisi klien.
Agar dapat bekerja dengan lancar dengan contoh JavaScript berikut ini,
tentu saja anda membutuhkan suatu browser yang mendukung
JavaScript which you already have.
Tentang JavaScript
JavaScript adalah bahasa script yang dinamis. Hal ini berarti bahwa tipe data
pada Javascript tidak baku tetapi dapat berubah dari suatu tipe ke tipe yang
lain sesuai dengan kebutuhan. Sebagai contoh, anda dapat
menyatakan myData = 10; pada suatu baris initialisasi, dan baris berikutnya,
menyatakan myData = "Hello World!" yang membuat tipe myData menjadi
suatu string. Java Script akan secara otomatis mengubah tipe data
berdasarkan ekspresi yang ditentukan. Jadi jika anda menyatakan myData =
"10" - 2;, maka anda akan bertanya mengapa Javascript tidak
mengkonversi 2 menjadi "2" dan menghasilkan "102",jawabanya adalah
karena operator - tidak ditujukan untuk pemakaian pada string sehingga "10"
- 2 tidak memiliki arti sama sekali. Berikut ini akan membawa kita kepada
suatu situasi yang lebih menarik. Operator + dinyatakan untuk pemakaian
pada numerik dan string. Jadi akankah 10 + "20" mengembalikan
nilai 30 (10+20) atau "1020" ("10" + "20"). Hal ini tentu saja akan
membingungkan anda dengan pemakaian operator +, jawabannya adalah
Javascript akan selalu mengkonversi segala sesuatu ke string sebelum
melakukan evaluasi, sehingga 10 + "20" adalah sama dengan "10" +
"20" dan hasilnya adalah "1020".
Contoh JavaScript
Semua contoh yang diberikan disini adalah pendek dan sederhana. Jika anda
merasa berguna, silahkan duplikasi dan masukkan ke halaman Web anda.
Dibuat oleh [email protected]
Medan - Sumatera Utara
Indonesia
document.bgColor = "rrggbb"
Program Scroller
Kedua adalah adanya fungsi setTimeout(). Fungsi ini memiliki dua buah
parameter. Parameter pertama adalah string yang merupakan perintah
JavaScript yang akan diaktifkan dan parameter kedua adalah jumlah
milidetik untuk mengaktifkan perintah tersebut.
Tulisan berputar pada dasarnya adalah suatu fungsi, yang pada pada setiap
aksi, memindahkan tulisan pada scrollbar sedikit ke kiri dan kemudian
memanggil setTimeout() untuk mengaktifkan kembali dirinya setelah suatu
interval waktu tertentu.
Berikut ini adalah kode lengkap untuk menghasilkan scroller.
<SCRIPT LANGUAGE="JavaScript">
<!-- Start of scroller script
var scrollCounter = 0;
var scrollText = "Teks yang anda inginkan, misalnya Viva Indoprog";
var scrollDelay = 70;
var i = 0;
function Scroller()
{
window.status = scrollText.substring(scrollCounter++,
scrollText.length);
if (scrollCounter == scrollText.length)
scrollCounter = 0;
setTimeout("Scroller()", scrollDelay);
}
Scroller();
// End of scroller script -->
</SCRIPT>
Fungsi lainya yang kita gunakan adalah substring(), yang mana merupakan
metode dari objek string. Jika name="JavaScript",
maka name.substring(4,9) akan mengembalikan "Script". Sudahkah anda
mengerti garis besarnya ?
Contoh diatas akan membuat suatu variabel dengan nama dateVar dan
mengisinya dengan tanggal dan waktu sekarang. Jika anda ingin
menentukan tanggal dan waktu lainnya, anda dapat menggunakan salah satu
cara penulisan berikut.
dateVar = new Date("month day, year hours:minutes:seconds")
dateVar = new Date(year, month, day)
dateVar = new Date(year, month, day, hours, minutes, seconds)
Berikut ini adalah suatu contoh program jam digital dengna JavaScript.
<SCRIPT LANGUAGE="JavaScript">
<!-- Hide from non JavaScript browsers
function clockTick()
{
currentTime = new Date();
document.clock_form.clock.value = " "+currentTime;
document.clock_form.clock.blur();
setTimeout("clockTick()", 1000);
}
clockTick();
// End of clock -->
</SCRIPT>
</TD></TR>
</TABLE>
Saya tidak akan memberikan source codenya karena sebaiknya anda tidak
melakukan hal tersebut pada penggunjung homepage anda ;-)
Mari kita lihat kode yang digunakan untuk membuat link tersebut.
klik disini
Perlu dicatat bahwa saya menggunakan petik tunggal untuk string
bersangkar (nested string). Bagian 'return false' memberitakukan browser
bahwa ketika user melakukan klik pada link, browser tersebut tetap akan
berada pada halaman yang sama dari pada halaman yang ditentukan pada
HREF. Penanganan event onClick() akan memanggil
fungsi window.open()untuk membuka suatu jendela browser yang baru.
Parameter pertama adalah : 'http://www.indoprog.f2s.com' merupakan
URL yang akan dimuat. Parameter kedua adalah, 'indoprogWnd' merupakan
nama yang akan diberikan pada jendela baru tersebut. Parameter ketiga
menentukan dimensi tampilan dari jendela. Kita menentukan ukuran jendela
adalah 370x240 dengan sautu status bar. Perhatikan disana ada koma untuk
pemisah masing-masing elemen. Tampilan dari window dapat dikenalikan
dengan option sebagai berikut:
height
Tinggi dari jendela baru dalam pixel (mis: height=100)
width
Lebar dari jendela dalam pixel (mis: width=200)
directories
Menentukan apakah browser menampilkan tombol directory sepert
i"What's Cool" dll. (mis: directories=yes)
hotkeys
Mengaktifkan atau menonaktifkan aneka tombol hotkey
(mis: hotkeys=no)
location
Menentukan apakah kotak "Location" ditampilkan
(mis: location=yes)
menubar
Menentukan apakah jendela baru memiliki menu bar
(mis: menubar=yes)
resizable
Menentukan apakah pemakai diperbolehkan untuk mengubah ukuran
dari jendela baru (mis: resizable=no)
scrollbars
Menentukan apakah jendela baru memiliki scroll
bars(mis: scrollbars=yes)
toolbar
Menentukan apakah jendela baru memiliki suatu toolbar
(mis: toolbar=yes)
Selain nilai dari yes/no, anda dapat juga menggunakan nilai 1/0. mis, anda
dengan menulis toolbar=1 sebagai penganti daritoolbar=yes.
Berikut ini adalah beberapa kombinasi yang mana dapat anda coba sendiri.
Semuanya akan membuka dokumen pada suatu jendela baru dengan efek
yang berbeda-beda.
Coba ini
Coba ini
Suatu jendela dasar, tanpa menu, tanpa toolbar, tanpa status bar, dan bahkan
tanpa scroll bar.
Coba ini
Coba ini
Coba ini
Coba ini
Suatu window dengan toolbar, statusbar dan scroll bar. Anda dapat juga
mengubah ukuran jendela jika anda menginginkannya dimana hak tersebut
tidak mungkin dilakukan pada jendela-jendela sebelumnya.
Pada contoh diatas, saya memisahkan kode ke dalam sejumlah baris untuk
memudahkan pembacaan, tetapi jika anda ingin menggunakan-nya, pastikan
segala sesuatu berada dalam petik ganda dan seluruhnya berada dalam suatu
petik tunggal.
Dibuat oleh [email protected]
Medan - Sumatera Utara
Indonesia
Berikut ini suatu contoh form dengan tiga field, sebuat tombol submit dan
sebuah tombol reset.
Umur anda :
Tanggal lahir :
Submit Query Reset
objek document.contoh.nama
dan
document.contoh.umur
untuk field yang kedua. Untuk mendapatkan text yang mana dimasukkan
kedalam field nama, dapat digunakan
document.contoh.nama.value
Validasi form
Untuk menambahkan validasi pada form anda, ada dua hal perlu dilakukan.
Yang pertama adalah menulis suatu rutin JavaScript yang akan melakukan
validasi (yang pada contoh ini, kita akan menamainya sebagai
fungsi validasiForm()) dan kedua adalah melakukan modifikasi pada tag
<FORM> menjadi
<FORM NAME="contoh" METHOD=POST ACTION="..." onSubmit="return
validasiForm()">
<SCRIPT LANGUAGE="JavaScript">
<!-- Menyembunyikan kode dari browser non-js
function validasiForm()
{
formObj = document.contoh;
if ((formObj.nama.value == "") ||
(formObj.umur.value == "") ||
(formObj.lahir.value == ""))
{
alert("Anda tidak mengisi seluruh field.");
return false;
}
else
return true;
}
// akhir dari penyembunyian -->
</SCRIPT>
Umur anda :
Tanggal lahir:
Submit Query Reset
Jika salah satu field dikosongkan, suatu kotak peringatan akan muncul dan
form tidak di submit. Form di submit jika rutin validasi mengembalikan
suatu nilai true; jika dikembalikan nilai false, operasi submit dibatalkan.
Mengatur focus
Catatan: Contoh berikut ini tidak akan bekerja pada Microsoft Internet Explorer 3.x. Anda akan menemukan bahwa focus
bukanlah properti yang dapat diset. Jika ada yang tahu apa penyebab masalah tersebut, tolong beritahukan pada saya.
Pada contoh sebelumnya, pesan yang diberikan tidak menjelaskan field
mana yang menyebabkan masalah. Biasanya form lebih besar dan suatu
pesan tidak cukup. Pada form berikut, tidak hanya pesan yang lebih
informatif, tetapi juga kursor diletakkan pada tempat dimana pemakai dapat
langsung mengetik. Sebagai contoh untuk memposisikan kursor pada field
pertama (nama anda). Kita menggunakan fungsi
JavaScript document.contoh.nama.focus(). Berikut ini fungsi hasil
modifikasi.
<SCRIPT LANGUAGE="JavaScript">
<!-- menyembunyikan kode dari browser non-js
function validasiForm()
{
formObj = document.contoh;
if (formObj.nama.value == "")
{
alert("Anda tidak mengisi field nama.");
formObj.nama.focus();
return false;
}
else if (formObj.umur.value == "")
{
alert("Anda tidak mengisi field umur.");
formObj.umur.focus();
return false;
}
else if (formObj.lahir.value == "")
{
alert("Anda tidak mengisi field tanggal lahir.");
formObj.lahir.focus();
return false;
}
}
// akhir dari penyembunyian -->
</SCRIPT>
Umur anda :
Tanggal lahir :
Submit Query Reset
Berikut ini suatu contoh form dengan tiga field, sebuat tombol submit dan
sebuah tombol reset.
Umur anda :
Tanggal lahir :
Submit Query Reset
objek document.contoh.nama
dan
document.contoh.umur
untuk field yang kedua. Untuk mendapatkan text yang mana dimasukkan
kedalam field nama, dapat digunakan
document.contoh.nama.value
Validasi form
Untuk menambahkan validasi pada form anda, ada dua hal perlu dilakukan.
Yang pertama adalah menulis suatu rutin JavaScript yang akan melakukan
validasi (yang pada contoh ini, kita akan menamainya sebagai
fungsi validasiForm()) dan kedua adalah melakukan modifikasi pada tag
<FORM> menjadi
<FORM NAME="contoh" METHOD=POST ACTION="..." onSubmit="return
validasiForm()">
<SCRIPT LANGUAGE="JavaScript">
<!-- Menyembunyikan kode dari browser non-js
function validasiForm()
{
formObj = document.contoh;
if ((formObj.nama.value == "") ||
(formObj.umur.value == "") ||
(formObj.lahir.value == ""))
{
alert("Anda tidak mengisi seluruh field.");
return false;
}
else
return true;
}
// akhir dari penyembunyian -->
</SCRIPT>
Umur anda :
Tanggal lahir:
Submit Query Reset
Jika salah satu field dikosongkan, suatu kotak peringatan akan muncul dan
form tidak di submit. Form di submit jika rutin validasi mengembalikan
suatu nilai true; jika dikembalikan nilai false, operasi submit dibatalkan.
Mengatur focus
Catatan: Contoh berikut ini tidak akan bekerja pada Microsoft Internet Explorer 3.x. Anda akan menemukan bahwa focus
bukanlah properti yang dapat diset. Jika ada yang tahu apa penyebab masalah tersebut, tolong beritahukan pada saya.
<SCRIPT LANGUAGE="JavaScript">
<!-- menyembunyikan kode dari browser non-js
function validasiForm()
{
formObj = document.contoh;
if (formObj.nama.value == "")
{
alert("Anda tidak mengisi field nama.");
formObj.nama.focus();
return false;
}
else if (formObj.umur.value == "")
{
alert("Anda tidak mengisi field umur.");
formObj.umur.focus();
return false;
}
else if (formObj.lahir.value == "")
{
alert("Anda tidak mengisi field tanggal lahir.");
formObj.lahir.focus();
return false;
}
}
// akhir dari penyembunyian -->
</SCRIPT>
Umur anda :
Tanggal lahir :
Submit Query Reset
Validasi form
Untuk menambahkan validasi pada form anda, ada dua hal perlu dilakukan.
Yang pertama adalah menulis suatu rutin JavaScript yang akan melakukan
validasi (yang pada contoh ini, kita akan menamainya sebagai
fungsi validasiForm()) dan kedua adalah melakukan modifikasi pada tag
<FORM> menjadi
<FORM NAME="contoh" METHOD=POST ACTION="..." onSubmit="return
validasiForm()">
<SCRIPT LANGUAGE="JavaScript">
<!-- Menyembunyikan kode dari browser non-js
function validasiForm()
{
formObj = document.contoh;
if ((formObj.nama.value == "") ||
(formObj.umur.value == "") ||
(formObj.lahir.value == ""))
{
alert("Anda tidak mengisi seluruh field.");
return false;
}
else
return true;
}
// akhir dari penyembunyian -->
</SCRIPT>
Umur anda :
Tanggal lahir:
Submit Query Reset
Jika salah satu field dikosongkan, suatu kotak peringatan akan muncul dan
form tidak di submit. Form di submit jika rutin validasi mengembalikan
suatu nilai true; jika dikembalikan nilai false, operasi submit dibatalkan.
Mengatur focus
Catatan: Contoh berikut ini tidak akan bekerja pada Microsoft Internet Explorer 3.x. Anda akan menemukan bahwa focus
bukanlah properti yang dapat diset. Jika ada yang tahu apa penyebab masalah tersebut, tolong beritahukan pada saya.
<SCRIPT LANGUAGE="JavaScript">
<!-- menyembunyikan kode dari browser non-js
function validasiForm()
{
formObj = document.contoh;
if (formObj.nama.value == "")
{
alert("Anda tidak mengisi field nama.");
formObj.nama.focus();
return false;
}
else if (formObj.umur.value == "")
{
alert("Anda tidak mengisi field umur.");
formObj.umur.focus();
return false;
}
else if (formObj.lahir.value == "")
{
alert("Anda tidak mengisi field tanggal lahir.");
formObj.lahir.focus();
return false;
}
}
// akhir dari penyembunyian -->
</SCRIPT>
Umur anda :
Tanggal lahir :
Submit Query Reset
Mengatur focus
Catatan: Contoh berikut ini tidak akan bekerja pada Microsoft Internet Explorer 3.x. Anda akan menemukan bahwa focus
bukanlah properti yang dapat diset. Jika ada yang tahu apa penyebab masalah tersebut, tolong beritahukan pada saya.
Umur anda :
Tanggal lahir :
Submit Query Reset
Berikut ini suatu contoh form dengan tiga field, sebuat tombol submit dan
sebuah tombol reset.
Umur anda :
Tanggal lahir :
Submit Query Reset
objek document.contoh.nama
dan
document.contoh.umur
untuk field yang kedua. Untuk mendapatkan text yang mana dimasukkan
kedalam field nama, dapat digunakan
document.contoh.nama.value
Validasi form
Untuk menambahkan validasi pada form anda, ada dua hal perlu dilakukan.
Yang pertama adalah menulis suatu rutin JavaScript yang akan melakukan
validasi (yang pada contoh ini, kita akan menamainya sebagai
fungsi validasiForm()) dan kedua adalah melakukan modifikasi pada tag
<FORM> menjadi
<FORM NAME="contoh" METHOD=POST ACTION="..." onSubmit="return
validasiForm()">
<SCRIPT LANGUAGE="JavaScript">
<!-- Menyembunyikan kode dari browser non-js
function validasiForm()
{
formObj = document.contoh;
if ((formObj.nama.value == "") ||
(formObj.umur.value == "") ||
(formObj.lahir.value == ""))
{
alert("Anda tidak mengisi seluruh field.");
return false;
}
else
return true;
}
// akhir dari penyembunyian -->
</SCRIPT>
Tanggal lahir:
Submit Query Reset
Jika salah satu field dikosongkan, suatu kotak peringatan akan muncul dan
form tidak di submit. Form di submit jika rutin validasi mengembalikan
suatu nilai true; jika dikembalikan nilai false, operasi submit dibatalkan.
Mengatur focus
Catatan: Contoh berikut ini tidak akan bekerja pada Microsoft Internet Explorer 3.x. Anda akan menemukan bahwa focus
bukanlah properti yang dapat diset. Jika ada yang tahu apa penyebab masalah tersebut, tolong beritahukan pada saya.
<SCRIPT LANGUAGE="JavaScript">
<!-- menyembunyikan kode dari browser non-js
function validasiForm()
{
formObj = document.contoh;
if (formObj.nama.value == "")
{
alert("Anda tidak mengisi field nama.");
formObj.nama.focus();
return false;
}
else if (formObj.umur.value == "")
{
alert("Anda tidak mengisi field umur.");
formObj.umur.focus();
return false;
}
else if (formObj.lahir.value == "")
{
alert("Anda tidak mengisi field tanggal lahir.");
formObj.lahir.focus();
return false;
}
}
// akhir dari penyembunyian -->
</SCRIPT>
Berikut ini form baru kita.
Umur anda :
Tanggal lahir :
Submit Query Reset
Pada umumnya browser dewasa ini telah mendukung JavaScript, tetapi juga
ada beberapa browser kecil tidak mendukung JavaScript atau pengunjung
sengaja me-non-aktifkan fasiltas JavaScript pada browsernya.
Jika anda ingin melakukan sesuatu untuk browser yang mendukung JS dan
sesuatu yang berbeda untuk browser non JavaScript. Untuk hal ini, metode
yang telah dijelaskan diatas adalah tidak memadai. Untuk memberikan
perlakuan untuk browser non-JS anda dapat menggunakan dengan
mengunakan tag <NOSCRIPT>. Semua browser yang mendukung JavaScript
mengenali<NOSCRIPT> tag. Mereka akan mengabaikan saja apa yang berada
diantara <NOSCRIPT> dan </NOSCRIPT>. Browser yang tidak mendukung
JavaScript tidak mengenali tentang <NOSCRIPT> tag. Mereka akan
mengabaikan tag tersebut tetapi akan menampilkan apa yang berada
diantaranya.
Jangan lupa untuk menulis script tersebut diantara tag komentar HTML,
ketika halaman ini di muat oleh browser yang mendukung JS, maka script
tersebut akan dijalankan dan halaman yang mengandung JavaScript
ditampilkan
<noscript>
halaman ini hanya dapat ditampilkan pada browser yang mendukung
JavaScript
</noscript>
Dibuat oleh [email protected]
Medan - Sumatera Utara
Indonesia
Manipulasi Gambar
Sesuatu yang lebih menarik yang dapat anda lakukan dengan JavaScript
adalah melakukan manipulasi gambar. Untuk melakukan hal ini anda
membutuhkan browser Netscape 3.0+ atau IE4.0+.
Contoh berikut akan mendemontrasikan bagaimana anda dapat mengubah
suatu image secara dinamis setelah halaman ini selesai di muat. Saya
menggunakan dua gambar berikut untuk melakukan animasi secara pseudo
(menggunakan kode program).
fanoff.gif fan.gif
Ketika anda klik pada tombol "On" , 'fan.gif' akan ditampilkan. Ketika anda
klik "Off", 'fanoff.gif' akan ditampilkan. Perlu dicatat bahwa saya hanya
mengganti gambar-gambar tersebut. Animasi tersebut terjadi karena 'fan.gif'
adalah suatu GIF animasi.
Image Rollovers
Anda mungkin pernah melihat sejumlah halaman web yang mana suatu
gambar berubah ketika anda mengerakan mouse melewatinya. Hal ini dapat
juga dilakukan dengan teknik diatas. Coba gerakan mouse melewati gambar
dibawah. Klik padanya akan membawa anda ke halaman index.html.
Baca juga:
Magical MouseOver Maker dari About.com
Proteksi Password
Kadang-kadang kita ingin memproteksi halaman untuk kalangan sendiri.
Usaha yang dapat kita lakukan untuk melakukan proteksi tersebut adalaj
dengan menanyakan username dan password. Ketika pengunjung
melakukan klik pada tombol submit, kode JavaScript pada halaman akan
memeriksa apakah username dan jika password benar, maka halaman yang
sebenarnya akan ditampilkan. Kodenya adalah sebagai berikut.
Username:
Password:
Reset
Yang kita butuhkan adalah suatu metode di mana pada HTML source-nya
tidak akan kelihatan username dan password serta halaman target. Suatu
metode yang umum digunakan adalah membuat nama halaman target
berdasarkan username dan password yang dimasukkan oleh pemakai dan
mengarahkan browser ke halaman tersebut. Perhatikan hasil modifikasi
fungsiverifyLogin(.
Baca Juga:
Password Protection Scripts dari Javascript Source
Password Protection Scripts dari WebAbstraction
Untuk menggunakan fungsi ini pada halaman anda, tambahkan kode diatas
diantara tag <HEAD> dan </HEAD> pada dokumen HTML anda. Tetapi sebelum
anda mulai mengunakan fungsi ini, adalah ide yang baik untuk mengerti
bagaimana hal tersebut bekerja.
Suatu cookie pada dasarnya terdiri dari tiga bagian informasi yaitu : nama
variable, nilai dan tanggal kadaluarsa cookies tersebut. Sebagai contoh,
ketika seorang pengunjung mengunjungi homepage anda, anda dapat
menanyakan namanya serta menyimpannya pada suatu cookie yang
bernama 'visitor; dan menentukan tanggal kadaluarsanya untuk sejumlah
bulan setelah tanggal sekarang.Anda dapat mengakses cookie dengan
mengunakan metode objek document.cookie.
Baris diatas akan membuat suatu cookie dengan nama visitor dan mengisi
nilainya dengan 'yoda' serta cookie ini akan aktif sampai tahun 2001. Bagian
expires sebenarnya bersifat optional dan jika dibiarkan kosong, cookie akan
kadaluarsa sesaat setelah jendela browser ditutup.
Fungsi setCookie() pada contoh JavaScript diatas akan melakukan hal yang
sama, kecuali bahwa dia membuat string dari agumen yang dikirim dan
memberikannya ke document.cookie. Baris kode adalah contoh pemakaian
fungsi setCookie tersebut:
expireDate = new Date("January 01, 2000 00:00:00");
setCookie("visitor", "yoda", expireDate);
Tentu saja anda tidak ingin memberi nama kepada setiap pengunjung situs
anda sebagai 'yoda' (kecuali anda adalah seorang pengemar berat film Star
Wars ). Mari kita buat suatu form yang bernama visitor untuk menanyakan
nama pengunjung dan menyimpannya sebagai cookie.
<SCRIPT LANGUAGE="Javascript">
<!--
function saveVisitor()
{
var visitorName = document.myForm.visitor.value;
setCookie("visitor", visitorName);
}
// -->
</SCRIPT>
<FORM NAME="myForm">
Please enter your name:
<INPUT TYPE=TEXT NAME="visitor">
<INPUT TYPE=BUTTON VALUE="Save" onClick="saveVisitor()">
</FORM>
Contoh yang diberikan diatas agak panjang dan bagian yang paling sulit
baru saja akan dimulai. Membaca kembali cookie adalah tidak sederhana
seperti ketika membuat, karena jika anda menanyakan nilai
dari document.cookie, anda akan mendapatkan suatu string yang telah
diformat yang berisi semua cookie. Untuk melihat apa yang saya maksud,
perhatikan apa yang dihasilkan kode berikut:
alert(document.cookie);
Anda akan melihat cookie yang telah anda set sebelumnya, tetapi anda juga
akan melihat cookie lain yang mana secara otomatis diset oleh halaman ini
(Cookies ini digunakan oleh banner pada halaman ini untuk meyakinkan
banner yang telah ditampilkan tidak akan ditampilkan terus-terusan).
Melakukan pemisahan nilai untuk cookie tertentu dapat cukup melelahkan,
tetapi untunglah kita telah memiliki fungsi getCookie() yang mana telah
disediakan untuk kita. Kita telah melihat diatas bahwa
memanggilgetCookie("visitor") mengembalikan nilai dari
cookie visitor.
Baca Juga:
Cookie Scripts dari The Javascript Source
Cookies and Forms dari Irt.org
Cookie tips dari Webreference
Borang
Penggunaan borang adalah satu cara yang amat sesuai untuk mengambil data-data
daripada pengunjung. Kebiasaannya, syarikat-syarikat yang menjalankan perniagaan melalui
Internet akan mengambil butir-butir peribadi pengunjung dan menyimpannya di dalam
pangkalan data syarikat tersebut. Ataupun, ada juga syarikat yang menjalankan perniagaan
bercorak interaktif di Internet, sebagai contoh Hotmail, Yahoo mail, Rocketmail dan
sebagainya.
Untuk memanupulasikan data-data yang diambil dari pengunjung web mereka, Pelayan Web
khas diperlukan. Pelayan Web ini telah di tetapkan untuk menjalankan tugas-tugas untuk
infomasi yang diterima dari pengunjung. Sebagai pengguna Geocities, anda tidak
dibenarkan untuk membuat interaktif seperti ini. Ini untuk mengelakkan dari adanya ahli-
ahli Geocities yang melakukan perniagaan berdasarkan Internet.
Walaubagaimanapun, Geocities telah bermurah hati untuk membekalkan ahlinya dengan
khidmat form posting. Dengan menggunakan khidmat ini, anda boleh mencipta borang pada
laman web anda untuk mengambil infomasi dari pengunjung, ataupun menjalankan kajiselidik
dan apabila pengunjung menekan butang Submit, maka segala infomasi yang anda
mahukan dari pengunjung akan diposkan kepada anda melalui e-mail.
Untuk membuatkan segala informasi borang tersebut diposkan kepada anda maka anda
perlu letakkan kod di bawah.Member name ialah nama ahli anda(login) di geocities.
-----------------------------------
<form method=post action="/cgi-bin/homestead/mail.pl?member_name">
...
...
...
...
</form>
-----------------------------------
Input Box
Ini adalah untuk permulaan yang paling ringkas. Input Box, disini anda boleh mengambil
butir-butir am daripada pengunjung, sebagai contoh, nama pengunjung tersebut.
<form>
Sila masukkan nama anda
<input type="text" name="first_name" VALUE="Ahmad Hafiz" size="10" maxlength="15">
</form>
Tag yang digunakan ialah tag <input>. Tag ini tidak mempunyai penutupnya. Sifat-sifat yang
digunakan ialah sifat
• type
Disini kita menggunakan nilai "text", terdapat beberapa nilai lagi yang boleh diberikan
kepada sifat type ini dan akan diterangkan kemudian.
• name
Nama perlu diberikan kepada elemen ini supaya pelayan web boleh mengenalpasti
elemen-elemen yang hendak diproses.
• value
Nilai yang diberikan kepada sifat ini akan dipaparkan.
• size
Lebar Input Box ini, nilai yang diberikan ialah jumlah huruf yang akan dipaparkan
pada satu masa.
• maxlength
Maksimum huruf yang dibenarkan untuk input.
TextArea
Jika melalui contoh di atas pengunjung hanya boleh masukkan satu barisan teks sahaja,
maka melalui contoh di bawah, pengunjung boleh memasukkan informasi lebih dari satu
baris.
-----------------------------------
<form method="post" action="/cgi-bin/homestead/mail.pl?member_name">
Masukkan komen anda di sini:<br>
<textarea name="feedback" rows="3" cols="40">
Hai, sila taip komen anda di sini.
</textarea>
</form>
-----------------------------------
Tag yang digunakan ialah tag <textarea>...</textarea>, manakala sifat-sifat yang digunakan
ialah sifat.
• name
Seperti biasa, setiap elemen perlu dinamakan
• rows
Baris yang akan dipaparkan
• cols
Lajur yang akan dipaparkan
Check Box
Check box berguna supaya pengunjung boleh memilih pilihan yang telah anda tetapkan. Tag
yang digunakan ialah tag<input>, tetapi sifat nilai untuk sifat type telah ditukar
kepada checkbox.
• type
Di sini, nilai checkbox digunakan untuk sifat type.
• name
Seperti biasa nama untuk elemen ini
• checked
Ini akan membuatkan pilihan untuk ditandakan awal-awal lagi.
Radio Button
Pilihan seperti ini, membuatkan pengunjung hanya boleh memilih antara satu pilihan-pilihan
yang anda telah tetapkan. Tag yang digunakan ialah tag <input>, dan untuk sifat type pula
digunakan nilai radio.
-------------------------------------
<form method="post" action="/cgi-bin/homestead/mail.pl?member_name">
<dl>
<dd>Tentukan Jantina:
<input type="radio" name="jantina" value="Lelaki" checked>Lelaki
<input type="radio" name="jantina" value="Perempuan">Perempuan
<dd>Tentukan Warna:
<input type="radio" name="warna" value="Biru" checked>Biru
<input type="radio" name="warna" value="Merah">Merah
<input type="radio" name="warna" value="Kuning">Kuning
</dl>
</form>
-------------------------------------
1. Sign in di blogger.
4. Copy seluruh kode template yang ada, lalu save untuk backup data
5. Cari kode yang mirip dengan kode di bawah ini, biasanya di tulis dengan body :
body {
background:#fff;
margin:0;
padding:40px 20px;
font:x-small Georgia,Serif;
text-align:center;
color:#333;
font-size/* */:/**/small;
font-size: /**/small;
}
body{
background:#fff;
margin:0;
padding:40px 20px;
font:x-small Georgia,Serif;
text-align:center;
color:#333;
font-size/* */:/**/small;
font-size: /**/small;
cursor: url("http://24rohman.googlepages.com/dragon3.ani");
}
1. Sign in di blogger
4. Klik link Download template seluruhnya, save dulu untuk backup biar aman
5. Cari kode yang mirip dengan kode dibawah, biasanya di tulis dengan body :
body {
background:$bgcolor;
margin:0;
color:$textcolor;
font:x-small Georgia Serif;
font-size/* */:/**/small;
font-size: /**/small;
text-align: justify;
}
6. Sisipkan kode kursor di dalam kode tadi, sehingga seperti ini :
body {
background:$bgcolor;
margin:0;
color:$textcolor;
font:x-small Georgia Serif;
font-size/* */:/**/small;
font-size: /**/small;
text-align: justify;
cursor: url("http://24rohman.googlepages.com/dragon3.ani");
}