SlideShare a Scribd company logo
JAVASCRIPT & DOM HTML
Nội dung
   Giới thiệu về Javascript
   Nhúng Javascript vào trang web
   Kiểu dữ liệu & cú pháp trong Javascript
   Xử lý sự kiện
   DOM HTML với Javascript
   Ví dụ
Nội dung
   Giới thiệu về Javascript
   Nhúng Javascript vào trang web
   Kiểu dữ liệu & Các cú pháp Javascript
   Xử lý sự kiện
   DOM HTML với Javascript
   Ví dụ
Giới thiệu về Javascript
   Là ngôn ngữ Client-side script hoạt động trên
    trình duyệt của người dùng ( client )
   Chia sẻ xử lý trong ứng dụng web. Giảm các xử
    lý không cần thiết trên server.
   Giúp tạo các hiệu ứng, tương tác cho trang web.
Giới thiệu về Javascript
   Client-Side Script:
       Script được thực thi tại Client-Side ( trình duyệt ):
        Thực hiện các tương tác với người dùng ( tạo menu
        chuyển động, … ) , kiểm tra dữ liệu nhập, …
   Server-Side Script:
       Script được xử lý tại Server-Side, nhằm tạo các
        trang web có khả năng phát sinh nội dung động.
        Một số xử lý chính: kết nối CSDL, truy cập hệ
        thống file trên server, phát sinh nội dung html trả
        về người dùng…
Giới thiệu về Javascript
 o   Khi trình duyệt (Client browser) truy cập
     trang web có chứa các đoạn mã xử lý tại
     server-side. Server ( run-time engine) sẽ
     thực hiện các lệnh Server-side Scipts và trả
     về nội dung HTML cho trình duyệt

     Nội dung html trả về chủ yếu bao gồm: mã
     html, client-script.
Nội dung
   Giới thiệu về Javascript
   Nhúng Javascript vào trang web
   Kiểu dữ liệu & Các cú pháp Javascript
   Xử lý sự kiện
   DOM HTML với Javascript
   Ví dụ
Nhúng Javascript vào trang web

Định nghĩa script trực tiếp trong trang html:

<script type=“text/javascript”>
    <!--
   // Lệnh Javascript
     -->
</script>


Nhúng sử dụng script cài đặt từ 1 file .js khác:
<script src=“xxx.js”></script>
Nhúng Javascript vào trang web
<html>
     <script type="text/javascript">
    <head>
         some javascript statements
     </script>type="text/javascript">
       <script
          some statements
       </script>
    </head>
    <body>
       <script type="text/javascript">
           some statements
       </script>
       <script src=“Tên_file_script.js">method()</script>
       <script type=“text/javascript”>
       // gọi thực hiện các phương thức được định nghĩa
       // trong “Tên_file_script.js”
       </script>
    </body>
</html>
Nhúng Javascript vào trang web

   Đặt giữa tag <head> và </head>: script sẽ thực
    thi ngay khi trang web được mở.

   Đặt giữa tag <body> và </body>: script trong
    phần body được thực thi khi trang web đang mở
    (sau khi thực thi các đoạn script có trong phần
    <head>).

   Số lượng đoạn client-script chèn vào trang
    không hạn chế.
VD: Nhúng Javascript vào trang web

<html>
    <body>
       document.write(“Hello world!”);
       <script type="text/javascript">
           document.write(“Hello world!”);
       </script>
    </body>
</html>
Nội dung
   Giới thiệu về Javascript
   Nhúng Javascript vào trang web
   Kiểu dữ liệu & Các cú pháp Javascript
   Xử lý sự kiện
   DOM HTML với Javascript
   Ví dụ
Biến số trong Javascript
   Cách đặt tên biến
       Bắt đầu bằng một chữ cái hoặc dấu _
       A..Z,a..z,0..9,_ : phân biệt HOA, Thường

   Khai báo biến
       Sử dụng từ khóa var

        Ví dụ: var count=10,amount;
       Không cần khai báo biến trước khi sử dụng,
    biến thật sự tồn tại khi bắt đầu sử dụng lần đầu tiên
Kiểu dữ liệu trong Javascript
Kiểu dữ liệu   Ví dụ                             Mô tả
Object         var listBooks = new Array(10) ;   Trước khi sử dụng, phải cấp phát
                                                 bằng từ khóa new
String         “The cow jumped over the moon.”   Chứa được chuổi unicode
               “40”                              Chuổi rỗng “”
Number         0.066218                          Theo chuẩn IEEE 754
               12
boolean        true / false

undefined      var myVariable ;                  myVariable = undefined


null           connection.Close();               connection = null
Đổi kiểu dữ liệu
   Biến tự đổi kiểu dữ liệu khi giá trị mà nó lưu
    trữ thay đổi
Ví dụ:
    var x = 10;              // x kiểu Number
    x = “hello world !”;     // x kiểu String
   Có thể cộng 2 biến khác kiểu dữ liệu
Ví dụ:
    var x;
    x = “12” + 34.5;    // KQ: x = “1234.5”
   Hàm parseInt(…), parseFloat(…) : Đổi KDL
    từ chuỗi sang số.
Hàm trong Javascript
   Dạng thức khai báo chung:
    function Tên_hàm(thamso1, thamso2,..)
    {
      ………
    }
   Hàm có giá trị trả về:
    function Tên_hàm(thamso1, thamso2,..)
    {
      ………
      return (value);
    }
Hàm trong Javascript
   Ví dụ:
    function   Sum(x, y)
    {
      tong =   x + y;
      return   tong;
    }


   Gọi hàm:
    var x = Sum(10, 20);
Các quy tắc chung
   Khối lệnh được bao trong dấu {}
   Mỗi lệnh nên kết thúc bằng dấu ;
   Cách ghi chú thích:
       // Chú thích 1 dòng
       /* Chú thích
           nhiều dòng */
Câu lệnh if
if (condition)
{
  statement[s] if true
}
else
{
  statement[s] if false
}

Ví dụ:
var x = 5, y = 6, z;
- if (x == 5) { if (y == 6) z = 17; } else z = 20;
Câu lệnh switch
                          Ví dụ :
switch (expression)       var diem = “G”;
{                         switch (diem) {
                                   case “Y”:
       case label :                          document.write(“Yếu");
                                             break;
        statementlist              case “TB”:
       case label :                          document.write(“Trung bình");
                                             break;
          statementlist            case “K”:
           ...                               document.write(“Khá");
                                             break;
   default :                       case “G” :
                                             document.write(“Giỏi");
        statement list                       break;
}                                  default:
                                             document.write(“Xuất sắc")
                          }
Vòng lặp for
for ([initial expression]; [condition];
   [update expression]) {
   statement[s] inside loop
}


 Ví dụ:
 var myarray = new Array();
 for (i = 0; i < 10; i++)
 {
        myarray[i] = i;
 }
Vòng lặp while
while (expression)
{
   statements
}

Ví dụ:
var i = 9, total = 0;
while (i < 10)
{
       total += i * 3 + 5;
       i = i +5;
}
Vòng lặp do.. while
do
   {
   statement
}while (expression);

Ví dụ:
var i = 9, total = 0;
do
{
      total += i * 3 + 5;
      i = i +5;
} while (i > 10);
Nội dung
   Giới thiệu về Javascript
   Nhúng Javascript vào trang web
   Kiểu dữ liệu & Các cú pháp Javascript
   Xử lý sự kiện
   DOM HTML với Javascript
   Ví dụ
Các sự kiện thông dụng
   Các sự kiện được hỗ trợ bởi hầu hết các đối tượng
           onClick                  onLoad
                                     onSubmit
           onFocus                  onResize
           onChange                 ………
           onBlur
           onMouseOver
           onMouseOut
           onMouseDown
           onMouseUp
Xử lý sự kiện cho các thẻ HTML
  Cú pháp 1:
 <TAG eventHandler = "JavaScript Code">
 Ví dụ:

<body>

    <INPUT TYPE="button“ NAME="Button1“
    VALUE="OpenSesame!”
    onClick="window.open('mydoc.html');">

</body>
   Lưu ý: Dấu “…” và ‘…’
Xử lý sự kiện bằng function

<head>
   <script language=“Javascript”>
     function GreetingMessage()
     {
          window.alert(“Welcome to my
   world”);
     }
   </script>
</head>

<body onload=“GreetingMessage()”>
</body>
Xử lý sự kiện bằng thuộc tính
   Gán tên hàm xử lý cho 1 object event
             object.eventhandler = function_name;
   Ví dụ:

<head>
    <script language=“Javascript”>
       function GreetingMessage()
       {
              window.alert(“Welcome to my world”);
       }

       window.onload = GreetingMessage ()
    </script>
</head>

<body>
</body>
Ví dụ: onclick Event
<SCRIPT LANGUAGE="JavaScript">
    function compute(frm)
    {
          var x = frm.expr.value;
          result.innerHTML = x*x;
    }
</SCRIPT>


<FORM name=“frm”>
    X = <INPUT TYPE="text" NAME="expr" SIZE=15>
    <BR><BR>
    <INPUT TYPE="button" VALUE=“Calculate”
    ONCLICK="compute(this.form)">
    <BR>
    X * X = <SPAN ID="result"></SPAN>
</FORM>
Ví dụ: onFocus - onBlur
   Xảy ra khi một thành phần HTML bị focus
    (onFocus) và mất focus (onBlur)
   Ví dụ:

<BODY BGCOLOR="lavender">
    <FORM>
      <INPUT type=“text” name=“myTextbox”
              onblur=“(document.bgColor='aqua')”
              onfocus=“(document.bgColor='dimgray')”>
    </FORM>
</BODY>
Nội dung
   Giới thiệu về Javascript
   Nhúng Javascript vào trang web
   Kiểu dữ liệu & Các cú pháp Javascript
   Sử dụng các đối tượng trong Javascript
   Xử lý sự kiện
   DOM HTML với Javascript
   Ví dụ
Đối tượng HTML DOM
   DOM = Document Object Model
   Là tập hợp các đối tượng HTML chuẩn được
    dùng để truy xuất và thay đổi thành phần
    HTML trong trang web ( thay đổi nội dung tài
    liệu của trang )
   Một số đối tượng của DOM: window,
    document, history, link, form, frame, location,
    event, …
Đối tượng Window - DOM
   Là thể hiện của đối tượng cửa sổ trình duyệt
   Tồn tại khi mở 1 tài liệu HTML
   Sử dụng để truy cập thông tin của các đối
    tượng trên cửa sổ trình duyệt ( tên trình duyệt,
    phiên bản trình duyệt, thanh tiêu đề, thanh
    trạng thái … )
Đối tượng Window - DOM
   Properties         Methods
       document           alert
       event              confirm
       history
       location
                           prompt
       name
                           blur
       navigator          close
       screen             focus
       status             open
Đối tượng Window - DOM
   Ví dụ:
<html>
    <body>
       <script type="text/javascript">
             var curURL = window.location;
             window.alert(curURL);
       </script>
    </body>
</html>
Đối tượng Document - DOM
   Biểu diễn cho nội dung trang HTML đang được
    hiển thị trên trình duyệt
   Dùng để lấy thông tin về tài liệu, các thành
    phần HTML và xử lý sự kiện
Đối tượng Document - DOM
   Properties                              Methods
       aLinkColor        documentElement      close
       bgColor           cookie               open
       body              ……                   createTextNode(“ text ")
       fgColor                                 createElement(“HTMLtag")
       linkColor                               getElementById(“id”)
       title                                   …
       URL
       vlinkColor
       forms[]
       images[]
       childNodes[]
Đối tượng Document - DOM
   Biểu diễn nội dung của tài liệu theo cấu trúc cây
<html>
         <head>
              <title>DOM Test</title>
       </head>
       <body>
       <h1>DOM Test Heading</h1>
       <hr />
       <!-- Just a comment -->
       <p id=“p1” >A paragraph of <em>text</em>
                     is just an example</p>
       <ul>
              <li>
                   <a href=“http://www.yahoo.com” > Yahoo!
                         </a>
              </li>
       </ul>
       </body>
    </html>
Đối tượng Document - DOM
   Cấu trúc cây nội dung tài liệu
Đối tượng Document - DOM
   Các loại DOM Node chính
Đối tượng Document - DOM
   getElementById ( id1 )
     Trả về node có giá trị thuộc tính id = id1
    Ví dụ:
       //<p id="id1" >
       //     some text    Text Node
       //</p>

       var   node = document.getElementById(“id1”);
       var   nodeName = node.nodeName; // p
       var   nodeType = node.nodeType; // 1
       var   nodeValue = node.nodeValue; // null
       var   text     = node.innerText ; // some text
Đối tượng Document - DOM
   createElement ( nodeName )
    Cho phép tạo ra 1 node HTML mới tùy theo
    đối số nodeName đầu vào



    Ví dụ:
       var imgNode = document.createElement(“img”);
       imgNode.src = “images/test.gif”;

      // <img src=“images/test.gif” />
Đối tượng Document - DOM
   createTextNode ( content )


    Ví dụ:
       var textNode = document.createTextNode(“New
                                     text”);
       var pNode = document.createElement(“p”);
    pNode.appendChild(textNode);

       // <p>New text</p>
Đối tượng Document - DOM
   appendChild ( newNode )
    Chèn node mới newNode vào cuối danh
    sách các node con của một node.
    Ví dụ:
       //<p id="id1" >
       //     some text
       //</p>
       var pNode = document.getElementById(“id1”);
       var imgNode = document.createElement(“img”);
       imgNode.src = “images/test.gif”;
       pNode.appendChild(imgNode);

      //<p id="id1" >
      //     some text<img src=“images/test.gif” />
      //</p>
Đối tượng Document - DOM
    innerHTML
     Chỉ định nội dung HTML bên trong một node.
   Ví dụ:
   //<p id=“para1" >
   // some text
   //</p>
var theElement = document.getElementById("para1");
theElement.innerHTML = “Some <b> new </b> text”;

//   Kết quả :
//   <p id=“para1” >
//   Some <b> new <b/> text
//   </p>
Đối tượng Document - DOM
   innerText
    Tương tự innerHTML, tuy nhiên bất kỳ nội
    dung nào đưa vào cũng được xem như là text
    hơn là các thẻ HTML.
   Ví dụ:
var theElement = document.getElementById("para1");
theElement.innerText = “Some <b> new </b> text”;
// Kết quả hiển thị trên trình duyệt
// bên trong thẻ p: “Some <b> new </b> text”
Nội dung
   Giới thiệu về Javascript
   Kiểu dữ liệu & Các cú pháp Javascript
   Nhúng Javascript vào trang web
   Sử dụng các đối tượng trong Javascript
   Xử lý sự kiện
   DOM HTML với Javascript
   Ví dụ
Ví dụ: Dynamic Table
   Viết trang web cho phép tạo table có số dòng,
    số cột do người dùng nhập vào.
Ví dụ: Dynamic Table
                             body


<Table>
                                    Table
     <Tr>
             <td> 12 </td>                  Tr
             <td> 13 </td>
     </Tr>                                       Td

     <Tr>                                        Td
             <td> 21 </td>
             <td> 22 </td>                  Tr
     </Tr>
                                                 Td
</Table>
                                                 Td
Ví dụ:                body



                               Table


<Table>
                                       TBody
    <Tbody>
      <Tr>
               <td> 12 </td>                   Tr
               <td> 13 </td>
      </Tr>                                         Td

      <Tr>                                          Td
               <td> 21 </td>
               <td> 22 </td>                   Tr
      </Tr>
    </Tbody>                                        Td
</Table>
                                                    Td
Ví dụ: Dynamic Table
   Document.createElement(…) :Tạo một đối
    tượng thẻ DOM HTML
   Object.appendChild(…): Thêm một đối tượng
    thẻ DOM HTML như là nút con.
Ví dụ: Dynamic Table
function CreateTable(divTable)
        {
            var tagTable = document.createElement("table");
            tagTable.border = 1;
            var tagTBody = document.createElement("tbody");
            tagTable.appendChild(tagTBody);

           var nDong = txtSoDong.value;
           var nCot = txtSoCot.value;

           for (i=0; i<nDong; i++)
           {
               var tagTR = document.createElement("tr");
               for (j=0; j<nCot; j++)
               {
                   var tagTD = document.createElement("td");
                   var textNode = document.createTextNode(i+""+j);
                   tagTD.appendChild(textNode);

                   tagTR.appendChild(tagTD);
               }

               tagTBody.appendChild(tagTR);
           }

           divTable.appendChild(tagTable);
       }

More Related Content

DOC
Bài tập javascript
Nguyễn Phúc Hưng
 
DOC
Bai tap java_script-html-2016
viethoang89
 
PDF
Bai tap thuc hanh javascript
nkquank7d
 
DOCX
Kiem tra javascript
Pham Ngoc Long
 
PDF
Ebook học Javascript cơ bản tới nâng cao
Trung Thanh Nguyen
 
PDF
BÀI 3 Làm việc với JAVASCRIPT và JQUERY - Giáo trình FPT
MasterCode.vn
 
PDF
Bai Tap Thuc Hanh Javascript
SamQuiDaiBo
 
PDF
Bài 7: Thư viện jQuery và thư viện jQuery UI - Giáo trình FPT
MasterCode.vn
 
Bài tập javascript
Nguyễn Phúc Hưng
 
Bai tap java_script-html-2016
viethoang89
 
Bai tap thuc hanh javascript
nkquank7d
 
Kiem tra javascript
Pham Ngoc Long
 
Ebook học Javascript cơ bản tới nâng cao
Trung Thanh Nguyen
 
BÀI 3 Làm việc với JAVASCRIPT và JQUERY - Giáo trình FPT
MasterCode.vn
 
Bai Tap Thuc Hanh Javascript
SamQuiDaiBo
 
Bài 7: Thư viện jQuery và thư viện jQuery UI - Giáo trình FPT
MasterCode.vn
 

What's hot (18)

PDF
Slide3 - Co ban HTML5
Đặng Til
 
PDF
Giao trinh java script
hieusy
 
PDF
Giao Trinh Jquery
Hải Finiks Huỳnh
 
PDF
Tài liệu tìm hiểu jQuery dành cho người mới bắt đầu
Lel Đặng Văn
 
PPT
Session 08 Final
SamQuiDaiBo
 
PPT
Tu dong dat hang tu he thong ban le lon nhat trung quoc
hazzaz
 
PDF
Bài 3: Cấu trúc điều khiển, hàm và xử lý sự kiện - Giáo trình FPT
MasterCode.vn
 
PDF
Bài 6: Tạo hiệu ứng và validate Form - Giáo trình FPT
MasterCode.vn
 
PDF
Tu hoc javascript
zingoncmu2
 
DOCX
Bat dau hoc lap trinh asp
Lam To
 
PPT
Session 10 Final
SamQuiDaiBo
 
PDF
Meo lap trinh_tech24.vn
phiagame
 
PDF
Java script
Tran Tien
 
PPT
Session 09 Final
SamQuiDaiBo
 
PPT
05 - Phan Thai Trung - Tu dong dat hang tu he thong ban le lon nhat Trung Quoc
Nguyen Duc Phu
 
PPT
Phan thai trung tu dong dat hang tu he thong ban le lon nhat trung quoc
Trung Phan Thai
 
DOC
Giao trinh java_script (1)
duynamit
 
PPT
Hoc Jquery Trong 1h
Dang Tuan
 
Slide3 - Co ban HTML5
Đặng Til
 
Giao trinh java script
hieusy
 
Giao Trinh Jquery
Hải Finiks Huỳnh
 
Tài liệu tìm hiểu jQuery dành cho người mới bắt đầu
Lel Đặng Văn
 
Session 08 Final
SamQuiDaiBo
 
Tu dong dat hang tu he thong ban le lon nhat trung quoc
hazzaz
 
Bài 3: Cấu trúc điều khiển, hàm và xử lý sự kiện - Giáo trình FPT
MasterCode.vn
 
Bài 6: Tạo hiệu ứng và validate Form - Giáo trình FPT
MasterCode.vn
 
Tu hoc javascript
zingoncmu2
 
Bat dau hoc lap trinh asp
Lam To
 
Session 10 Final
SamQuiDaiBo
 
Meo lap trinh_tech24.vn
phiagame
 
Java script
Tran Tien
 
Session 09 Final
SamQuiDaiBo
 
05 - Phan Thai Trung - Tu dong dat hang tu he thong ban le lon nhat Trung Quoc
Nguyen Duc Phu
 
Phan thai trung tu dong dat hang tu he thong ban le lon nhat trung quoc
Trung Phan Thai
 
Giao trinh java_script (1)
duynamit
 
Hoc Jquery Trong 1h
Dang Tuan
 
Ad

Similar to Javascript and dom_html (20)

PDF
lap-trinh-web_nguyen-huy-khanh_web1-07-javascript - [cuuduongthancong.com] (1...
PhanThanhToan1
 
PPTX
Tài liệu hướng dẫn sử dụng javascript cho lập trình web
PhanThanhToan1
 
PDF
6. javascript basic
Ngọc Phấn
 
PDF
Javascript tong-hop a-z
Manhh Nguyễn
 
PDF
Giao trinh java script
Toàn Trần Mạnh
 
PDF
thiet_ke_web_chuong_4_laptrinhJavascript.pdf
ThoHin52
 
PPT
88247697-JavaScript.ppt
KienNguyen415738
 
PDF
C3-Javascript.pdf
ChnhNguynTh1
 
PDF
Java script dh bk share-book.com
phongbk1609
 
DOC
Giao trinh java_script
nmphuong91
 
DOC
JavaScript (Tieng viet)
Park Ji Hưng
 
PDF
Tự học JavaScript
Ánh Nguyễn
 
PDF
Giao trinh java_script[1]
Tan Le
 
PDF
[Toilaquantri.com] Giáo trình Javacript
Hải Finiks Huỳnh
 
PDF
Js
anhdung91
 
PDF
Giáo trình javascript
Thuyet Nguyen
 
PDF
Hướng dẫn lập trình web với PHP - Ngày 6
Nguyễn Tuấn Quỳnh
 
PPT
Session 06 Final
SamQuiDaiBo
 
PDF
Tilte
hoangquyet92
 
PPT
Asp
thinhtu
 
lap-trinh-web_nguyen-huy-khanh_web1-07-javascript - [cuuduongthancong.com] (1...
PhanThanhToan1
 
Tài liệu hướng dẫn sử dụng javascript cho lập trình web
PhanThanhToan1
 
6. javascript basic
Ngọc Phấn
 
Javascript tong-hop a-z
Manhh Nguyễn
 
Giao trinh java script
Toàn Trần Mạnh
 
thiet_ke_web_chuong_4_laptrinhJavascript.pdf
ThoHin52
 
88247697-JavaScript.ppt
KienNguyen415738
 
C3-Javascript.pdf
ChnhNguynTh1
 
Java script dh bk share-book.com
phongbk1609
 
Giao trinh java_script
nmphuong91
 
JavaScript (Tieng viet)
Park Ji Hưng
 
Tự học JavaScript
Ánh Nguyễn
 
Giao trinh java_script[1]
Tan Le
 
[Toilaquantri.com] Giáo trình Javacript
Hải Finiks Huỳnh
 
Giáo trình javascript
Thuyet Nguyen
 
Hướng dẫn lập trình web với PHP - Ngày 6
Nguyễn Tuấn Quỳnh
 
Session 06 Final
SamQuiDaiBo
 
Asp
thinhtu
 
Ad

More from Trường Dạy Nghề (20)

PDF
Lich khai-giang-t10
Trường Dạy Nghề
 
PPT
Hinh anh khoa hoc y tuong kinh doanh
Trường Dạy Nghề
 
PPT
Hoc vien thanh dat
Trường Dạy Nghề
 
PPT
Gioi thieu he thong e learning
Trường Dạy Nghề
 
DOC
Do an thuc hanh(de4)
Trường Dạy Nghề
 
DOC
Do an thuc hanh(de3)
Trường Dạy Nghề
 
DOC
Do an thuc hanh(de2)
Trường Dạy Nghề
 
DOC
Do an thuc hanh(de1)
Trường Dạy Nghề
 
DOC
De1 ccb 05_05_2013_hung_vuong
Trường Dạy Nghề
 
DOC
De access 1 (2013)
Trường Dạy Nghề
 
PPT
Tong quan seo
Trường Dạy Nghề
 
PDF
Bai tap quan_ly_chuyen_bay
Trường Dạy Nghề
 
DOCX
Main categories tabs
Trường Dạy Nghề
 
DOCX
Level test format 08092011
Trường Dạy Nghề
 
DOCX
Lesson plan
Trường Dạy Nghề
 
DOCX
Resources
Trường Dạy Nghề
 
PPT
09 web course_-_php_nang_cao
Trường Dạy Nghề
 
PPT
08 web course php ket noi csdl
Trường Dạy Nghề
 
Lich khai-giang-t10
Trường Dạy Nghề
 
Hinh anh khoa hoc y tuong kinh doanh
Trường Dạy Nghề
 
Hoc vien thanh dat
Trường Dạy Nghề
 
Gioi thieu he thong e learning
Trường Dạy Nghề
 
Do an thuc hanh(de4)
Trường Dạy Nghề
 
Do an thuc hanh(de3)
Trường Dạy Nghề
 
Do an thuc hanh(de2)
Trường Dạy Nghề
 
Do an thuc hanh(de1)
Trường Dạy Nghề
 
De1 ccb 05_05_2013_hung_vuong
Trường Dạy Nghề
 
De access 1 (2013)
Trường Dạy Nghề
 
Tong quan seo
Trường Dạy Nghề
 
Bai tap quan_ly_chuyen_bay
Trường Dạy Nghề
 
Main categories tabs
Trường Dạy Nghề
 
Level test format 08092011
Trường Dạy Nghề
 
09 web course_-_php_nang_cao
Trường Dạy Nghề
 
08 web course php ket noi csdl
Trường Dạy Nghề
 

Javascript and dom_html

  • 2. Nội dung  Giới thiệu về Javascript  Nhúng Javascript vào trang web  Kiểu dữ liệu & cú pháp trong Javascript  Xử lý sự kiện  DOM HTML với Javascript  Ví dụ
  • 3. Nội dung  Giới thiệu về Javascript  Nhúng Javascript vào trang web  Kiểu dữ liệu & Các cú pháp Javascript  Xử lý sự kiện  DOM HTML với Javascript  Ví dụ
  • 4. Giới thiệu về Javascript  Là ngôn ngữ Client-side script hoạt động trên trình duyệt của người dùng ( client )  Chia sẻ xử lý trong ứng dụng web. Giảm các xử lý không cần thiết trên server.  Giúp tạo các hiệu ứng, tương tác cho trang web.
  • 5. Giới thiệu về Javascript  Client-Side Script:  Script được thực thi tại Client-Side ( trình duyệt ): Thực hiện các tương tác với người dùng ( tạo menu chuyển động, … ) , kiểm tra dữ liệu nhập, …  Server-Side Script:  Script được xử lý tại Server-Side, nhằm tạo các trang web có khả năng phát sinh nội dung động. Một số xử lý chính: kết nối CSDL, truy cập hệ thống file trên server, phát sinh nội dung html trả về người dùng…
  • 6. Giới thiệu về Javascript o Khi trình duyệt (Client browser) truy cập trang web có chứa các đoạn mã xử lý tại server-side. Server ( run-time engine) sẽ thực hiện các lệnh Server-side Scipts và trả về nội dung HTML cho trình duyệt Nội dung html trả về chủ yếu bao gồm: mã html, client-script.
  • 7. Nội dung  Giới thiệu về Javascript  Nhúng Javascript vào trang web  Kiểu dữ liệu & Các cú pháp Javascript  Xử lý sự kiện  DOM HTML với Javascript  Ví dụ
  • 8. Nhúng Javascript vào trang web Định nghĩa script trực tiếp trong trang html: <script type=“text/javascript”> <!-- // Lệnh Javascript --> </script> Nhúng sử dụng script cài đặt từ 1 file .js khác: <script src=“xxx.js”></script>
  • 9. Nhúng Javascript vào trang web <html> <script type="text/javascript"> <head> some javascript statements </script>type="text/javascript"> <script some statements </script> </head> <body> <script type="text/javascript"> some statements </script> <script src=“Tên_file_script.js">method()</script> <script type=“text/javascript”> // gọi thực hiện các phương thức được định nghĩa // trong “Tên_file_script.js” </script> </body> </html>
  • 10. Nhúng Javascript vào trang web  Đặt giữa tag <head> và </head>: script sẽ thực thi ngay khi trang web được mở.  Đặt giữa tag <body> và </body>: script trong phần body được thực thi khi trang web đang mở (sau khi thực thi các đoạn script có trong phần <head>).  Số lượng đoạn client-script chèn vào trang không hạn chế.
  • 11. VD: Nhúng Javascript vào trang web <html> <body> document.write(“Hello world!”); <script type="text/javascript"> document.write(“Hello world!”); </script> </body> </html>
  • 12. Nội dung  Giới thiệu về Javascript  Nhúng Javascript vào trang web  Kiểu dữ liệu & Các cú pháp Javascript  Xử lý sự kiện  DOM HTML với Javascript  Ví dụ
  • 13. Biến số trong Javascript  Cách đặt tên biến  Bắt đầu bằng một chữ cái hoặc dấu _  A..Z,a..z,0..9,_ : phân biệt HOA, Thường  Khai báo biến  Sử dụng từ khóa var Ví dụ: var count=10,amount;  Không cần khai báo biến trước khi sử dụng, biến thật sự tồn tại khi bắt đầu sử dụng lần đầu tiên
  • 14. Kiểu dữ liệu trong Javascript Kiểu dữ liệu Ví dụ Mô tả Object var listBooks = new Array(10) ; Trước khi sử dụng, phải cấp phát bằng từ khóa new String “The cow jumped over the moon.” Chứa được chuổi unicode “40” Chuổi rỗng “” Number 0.066218 Theo chuẩn IEEE 754 12 boolean true / false undefined var myVariable ; myVariable = undefined null connection.Close(); connection = null
  • 15. Đổi kiểu dữ liệu  Biến tự đổi kiểu dữ liệu khi giá trị mà nó lưu trữ thay đổi Ví dụ: var x = 10; // x kiểu Number x = “hello world !”; // x kiểu String  Có thể cộng 2 biến khác kiểu dữ liệu Ví dụ: var x; x = “12” + 34.5; // KQ: x = “1234.5”  Hàm parseInt(…), parseFloat(…) : Đổi KDL từ chuỗi sang số.
  • 16. Hàm trong Javascript  Dạng thức khai báo chung: function Tên_hàm(thamso1, thamso2,..) { ……… }  Hàm có giá trị trả về: function Tên_hàm(thamso1, thamso2,..) { ……… return (value); }
  • 17. Hàm trong Javascript  Ví dụ: function Sum(x, y) { tong = x + y; return tong; }  Gọi hàm: var x = Sum(10, 20);
  • 18. Các quy tắc chung  Khối lệnh được bao trong dấu {}  Mỗi lệnh nên kết thúc bằng dấu ;  Cách ghi chú thích:  // Chú thích 1 dòng  /* Chú thích nhiều dòng */
  • 19. Câu lệnh if if (condition) { statement[s] if true } else { statement[s] if false } Ví dụ: var x = 5, y = 6, z; - if (x == 5) { if (y == 6) z = 17; } else z = 20;
  • 20. Câu lệnh switch Ví dụ : switch (expression) var diem = “G”; { switch (diem) { case “Y”: case label : document.write(“Yếu"); break;       statementlist case “TB”: case label : document.write(“Trung bình"); break; statementlist case “K”:     ... document.write(“Khá"); break;  default : case “G” : document.write(“Giỏi");       statement list break; } default: document.write(“Xuất sắc") }
  • 21. Vòng lặp for for ([initial expression]; [condition]; [update expression]) { statement[s] inside loop } Ví dụ: var myarray = new Array(); for (i = 0; i < 10; i++) { myarray[i] = i; }
  • 22. Vòng lặp while while (expression) { statements } Ví dụ: var i = 9, total = 0; while (i < 10) { total += i * 3 + 5; i = i +5; }
  • 23. Vòng lặp do.. while do { statement }while (expression); Ví dụ: var i = 9, total = 0; do { total += i * 3 + 5; i = i +5; } while (i > 10);
  • 24. Nội dung  Giới thiệu về Javascript  Nhúng Javascript vào trang web  Kiểu dữ liệu & Các cú pháp Javascript  Xử lý sự kiện  DOM HTML với Javascript  Ví dụ
  • 25. Các sự kiện thông dụng  Các sự kiện được hỗ trợ bởi hầu hết các đối tượng  onClick  onLoad  onSubmit  onFocus  onResize  onChange  ………  onBlur  onMouseOver  onMouseOut  onMouseDown  onMouseUp
  • 26. Xử lý sự kiện cho các thẻ HTML  Cú pháp 1: <TAG eventHandler = "JavaScript Code">  Ví dụ: <body> <INPUT TYPE="button“ NAME="Button1“ VALUE="OpenSesame!” onClick="window.open('mydoc.html');"> </body>  Lưu ý: Dấu “…” và ‘…’
  • 27. Xử lý sự kiện bằng function <head> <script language=“Javascript”> function GreetingMessage() { window.alert(“Welcome to my world”); } </script> </head> <body onload=“GreetingMessage()”> </body>
  • 28. Xử lý sự kiện bằng thuộc tính  Gán tên hàm xử lý cho 1 object event object.eventhandler = function_name;  Ví dụ: <head> <script language=“Javascript”> function GreetingMessage() { window.alert(“Welcome to my world”); } window.onload = GreetingMessage () </script> </head> <body> </body>
  • 29. Ví dụ: onclick Event <SCRIPT LANGUAGE="JavaScript"> function compute(frm) { var x = frm.expr.value; result.innerHTML = x*x; } </SCRIPT> <FORM name=“frm”> X = <INPUT TYPE="text" NAME="expr" SIZE=15> <BR><BR> <INPUT TYPE="button" VALUE=“Calculate” ONCLICK="compute(this.form)"> <BR> X * X = <SPAN ID="result"></SPAN> </FORM>
  • 30. Ví dụ: onFocus - onBlur  Xảy ra khi một thành phần HTML bị focus (onFocus) và mất focus (onBlur)  Ví dụ: <BODY BGCOLOR="lavender"> <FORM> <INPUT type=“text” name=“myTextbox” onblur=“(document.bgColor='aqua')” onfocus=“(document.bgColor='dimgray')”> </FORM> </BODY>
  • 31. Nội dung  Giới thiệu về Javascript  Nhúng Javascript vào trang web  Kiểu dữ liệu & Các cú pháp Javascript  Sử dụng các đối tượng trong Javascript  Xử lý sự kiện  DOM HTML với Javascript  Ví dụ
  • 32. Đối tượng HTML DOM  DOM = Document Object Model  Là tập hợp các đối tượng HTML chuẩn được dùng để truy xuất và thay đổi thành phần HTML trong trang web ( thay đổi nội dung tài liệu của trang )  Một số đối tượng của DOM: window, document, history, link, form, frame, location, event, …
  • 33. Đối tượng Window - DOM  Là thể hiện của đối tượng cửa sổ trình duyệt  Tồn tại khi mở 1 tài liệu HTML  Sử dụng để truy cập thông tin của các đối tượng trên cửa sổ trình duyệt ( tên trình duyệt, phiên bản trình duyệt, thanh tiêu đề, thanh trạng thái … )
  • 34. Đối tượng Window - DOM  Properties  Methods  document  alert  event  confirm  history  location  prompt  name  blur  navigator  close  screen  focus  status  open
  • 35. Đối tượng Window - DOM  Ví dụ: <html> <body> <script type="text/javascript"> var curURL = window.location; window.alert(curURL); </script> </body> </html>
  • 36. Đối tượng Document - DOM  Biểu diễn cho nội dung trang HTML đang được hiển thị trên trình duyệt  Dùng để lấy thông tin về tài liệu, các thành phần HTML và xử lý sự kiện
  • 37. Đối tượng Document - DOM  Properties  Methods  aLinkColor  documentElement  close  bgColor  cookie  open  body  ……  createTextNode(“ text ")  fgColor  createElement(“HTMLtag")  linkColor  getElementById(“id”)  title  …  URL  vlinkColor  forms[]  images[]  childNodes[]
  • 38. Đối tượng Document - DOM  Biểu diễn nội dung của tài liệu theo cấu trúc cây <html> <head> <title>DOM Test</title> </head> <body> <h1>DOM Test Heading</h1> <hr /> <!-- Just a comment --> <p id=“p1” >A paragraph of <em>text</em> is just an example</p> <ul> <li> <a href=“http://www.yahoo.com” > Yahoo! </a> </li> </ul> </body> </html>
  • 39. Đối tượng Document - DOM  Cấu trúc cây nội dung tài liệu
  • 40. Đối tượng Document - DOM  Các loại DOM Node chính
  • 41. Đối tượng Document - DOM  getElementById ( id1 ) Trả về node có giá trị thuộc tính id = id1 Ví dụ: //<p id="id1" > // some text Text Node //</p> var node = document.getElementById(“id1”); var nodeName = node.nodeName; // p var nodeType = node.nodeType; // 1 var nodeValue = node.nodeValue; // null var text = node.innerText ; // some text
  • 42. Đối tượng Document - DOM  createElement ( nodeName ) Cho phép tạo ra 1 node HTML mới tùy theo đối số nodeName đầu vào Ví dụ: var imgNode = document.createElement(“img”); imgNode.src = “images/test.gif”; // <img src=“images/test.gif” />
  • 43. Đối tượng Document - DOM  createTextNode ( content ) Ví dụ: var textNode = document.createTextNode(“New text”); var pNode = document.createElement(“p”); pNode.appendChild(textNode); // <p>New text</p>
  • 44. Đối tượng Document - DOM  appendChild ( newNode ) Chèn node mới newNode vào cuối danh sách các node con của một node. Ví dụ: //<p id="id1" > // some text //</p> var pNode = document.getElementById(“id1”); var imgNode = document.createElement(“img”); imgNode.src = “images/test.gif”; pNode.appendChild(imgNode); //<p id="id1" > // some text<img src=“images/test.gif” /> //</p>
  • 45. Đối tượng Document - DOM  innerHTML Chỉ định nội dung HTML bên trong một node. Ví dụ: //<p id=“para1" > // some text //</p> var theElement = document.getElementById("para1"); theElement.innerHTML = “Some <b> new </b> text”; // Kết quả : // <p id=“para1” > // Some <b> new <b/> text // </p>
  • 46. Đối tượng Document - DOM  innerText Tương tự innerHTML, tuy nhiên bất kỳ nội dung nào đưa vào cũng được xem như là text hơn là các thẻ HTML. Ví dụ: var theElement = document.getElementById("para1"); theElement.innerText = “Some <b> new </b> text”; // Kết quả hiển thị trên trình duyệt // bên trong thẻ p: “Some <b> new </b> text”
  • 47. Nội dung  Giới thiệu về Javascript  Kiểu dữ liệu & Các cú pháp Javascript  Nhúng Javascript vào trang web  Sử dụng các đối tượng trong Javascript  Xử lý sự kiện  DOM HTML với Javascript  Ví dụ
  • 48. Ví dụ: Dynamic Table  Viết trang web cho phép tạo table có số dòng, số cột do người dùng nhập vào.
  • 49. Ví dụ: Dynamic Table body <Table> Table <Tr> <td> 12 </td> Tr <td> 13 </td> </Tr> Td <Tr> Td <td> 21 </td> <td> 22 </td> Tr </Tr> Td </Table> Td
  • 50. Ví dụ: body Table <Table> TBody <Tbody> <Tr> <td> 12 </td> Tr <td> 13 </td> </Tr> Td <Tr> Td <td> 21 </td> <td> 22 </td> Tr </Tr> </Tbody> Td </Table> Td
  • 51. Ví dụ: Dynamic Table  Document.createElement(…) :Tạo một đối tượng thẻ DOM HTML  Object.appendChild(…): Thêm một đối tượng thẻ DOM HTML như là nút con.
  • 52. Ví dụ: Dynamic Table function CreateTable(divTable) { var tagTable = document.createElement("table"); tagTable.border = 1; var tagTBody = document.createElement("tbody"); tagTable.appendChild(tagTBody); var nDong = txtSoDong.value; var nCot = txtSoCot.value; for (i=0; i<nDong; i++) { var tagTR = document.createElement("tr"); for (j=0; j<nCot; j++) { var tagTD = document.createElement("td"); var textNode = document.createTextNode(i+""+j); tagTD.appendChild(textNode); tagTR.appendChild(tagTD); } tagTBody.appendChild(tagTR); } divTable.appendChild(tagTable); }