Đó là cách chính xác để đưa tập lệnh vào html?

Các tập lệnh có thể được đặt bên trong phần thân hoặc phần đầu của trang HTML hoặc bên trong cả phần đầu và phần thân. Chúng tôi cũng có thể đặt javascript bên ngoài tệp HTML có thể được liên kết bằng cách chỉ định nguồn của nó trong thẻ script

JavaScript trong đầu. Hàm JavaScript được đặt bên trong phần đầu của trang HTML và hàm này được gọi khi nhấp vào nút.  

ví dụ.  

html




7____18____19

    Content-Script-Type: type
0
7
    Content-Script-Type: type
2
9

    Content-Script-Type: type
4
7
    Content-Script-Type: type
6
9

81
82

81
84

81
86

    Content-Script-Type: type
4
88
    Content-Script-Type: type
6
9

    Content-Script-Type: type
0
88
    Content-Script-Type: type
2
9

    Content-Script-Type: type
0____17
97____19

    Content-Script-Type: type
4
    Content-Script-Type: type
00

    Content-Script-Type: type
0____188
97
9

    Content-Script-Type: type
0
7
    Content-Script-Type: type
07
    Content-Script-Type: type
08
    Content-Script-Type: type
09
70

71
72
    Content-Script-Type: type
09
74
9

    Content-Script-Type: type
4
77

    Content-Script-Type: type
0
88
    Content-Script-Type: type
07
9

    Content-Script-Type: type
0
7
    Content-Script-Type: type
24
    Content-Script-Type: type
25
    Content-Script-Type: type
09
    Content-Script-Type: type
27

81
    Content-Script-Type: type
29
    Content-Script-Type: type
09
91
9

    Content-Script-Type: type
4
94

    Content-Script-Type: type
0
88
    Content-Script-Type: type
24
9

88
8
9

đầu ra.  

Đó là cách chính xác để đưa tập lệnh vào html?

 

JavaScript trong cơ thể. Hàm JavaScript được đặt bên trong phần nội dung của trang HTML và hàm được gọi khi nhấp vào nút. Ví dụ.  

html




7____18____19

    Content-Script-Type: type
0
7
    Content-Script-Type: type
2
9

    Content-Script-Type: type
0
88
    Content-Script-Type: type
2
9

    Content-Script-Type: type
0
7
75
9

    Content-Script-Type: type
4
7
97
9

81
    Content-Script-Type: type
62

    Content-Script-Type: type
4
88
97
9

    Content-Script-Type: type
4
7
    Content-Script-Type: type
07
    Content-Script-Type: type
08
    Content-Script-Type: type
09
70
9

81
77

    Content-Script-Type: type
4
88
    Content-Script-Type: type
07
9

    Content-Script-Type: type
4
7
    Content-Script-Type: type
24
    Content-Script-Type: type
25
    Content-Script-Type: type
09
    Content-Script-Type: type
27

816
    Content-Script-Type: type
29
    Content-Script-Type: type
09
91
9

81____1822

    Content-Script-Type: type
4
88
    Content-Script-Type: type
24
9

    Content-Script-Type: type
4
7
    Content-Script-Type: type
6
9

81
82

816
84

81
86

    Content-Script-Type: type
4
88
    Content-Script-Type: type
6
9

    Content-Script-Type: type
0____188
75
9

88
8
9

đầu ra.  

Đó là cách chính xác để đưa tập lệnh vào html?

 

JavaScript bên ngoài. JavaScript cũng có thể được sử dụng làm tệp bên ngoài. Tệp JavaScript có phần mở rộng tệp. js. Để sử dụng tập lệnh bên ngoài, hãy đặt tên của tệp tập lệnh trong thuộc tính src của thẻ tập lệnh. Tập lệnh bên ngoài không thể chứa thẻ tập lệnh.  

Tập lệnh cung cấp cho tác giả một phương tiện để mở rộng tài liệu HTML theo những cách tương tác và tích cực cao. Ví dụ

  • Các tập lệnh có thể được đánh giá khi tải tài liệu để sửa đổi nội dung của tài liệu một cách linh hoạt
  • Các tập lệnh có thể đi kèm với một biểu mẫu để xử lý đầu vào khi nó được nhập. Nhà thiết kế có thể tự động điền vào các phần của biểu mẫu dựa trên giá trị của các trường khác. Họ cũng có thể đảm bảo rằng dữ liệu đầu vào phù hợp với phạm vi giá trị được xác định trước, rằng các trường nhất quán lẫn nhau, v.v.
  • Các tập lệnh có thể được kích hoạt bởi các sự kiện ảnh hưởng đến tài liệu, chẳng hạn như tải, dỡ tải, tiêu điểm phần tử, di chuyển chuột, v.v.
  • Các tập lệnh có thể được liên kết với các điều khiển biểu mẫu (e. g. , nút) để tạo các thành phần giao diện người dùng đồ họa

Có hai loại tập lệnh mà tác giả có thể đính kèm vào tài liệu HTML

  • Những cái được thực thi một lần khi tài liệu được tải bởi tác nhân người dùng. Các tập lệnh xuất hiện trong phần tử SCRIPT được thực thi khi tài liệu được tải. Đối với tác nhân người dùng không thể hoặc sẽ không xử lý tập lệnh, tác giả có thể đưa vào nội dung thay thế thông qua phần tử NOSCRIPT
  • Những cái được thực thi mỗi khi một sự kiện cụ thể xảy ra. Các tập lệnh này có thể được gán cho một số phần tử thông qua các thuộc tính sự kiện nội tại

Ghi chú. Thông số kỹ thuật này bao gồm thông tin chi tiết hơn về tập lệnh trong các phần về tập lệnh macro

18. 2 Thiết kế tài liệu cho tác nhân người dùng hỗ trợ kịch bản

Các phần sau thảo luận về các vấn đề liên quan đến tác nhân người dùng hỗ trợ tập lệnh

SCRIPT - - %Script;          -- script statements -->
charset     %Charset;      #IMPLIED  -- char encoding of linked resource --
  type        %ContentType;  #REQUIRED -- content type of script language --
  src         %URI;          #IMPLIED  -- URI for an external script --
  defer       (defer)        #IMPLIED  -- UA may defer execution of script --
  >

thẻ bắt đầu. bắt buộc, Thẻ kết thúc. cần thiết

định nghĩa thuộc tính

src = uri [CT]Thuộc tính này chỉ định vị trí của tập lệnh bên ngoài. type = content-type [CI]Thuộc tính này chỉ định ngôn ngữ kịch bản của nội dung phần tử và ghi đè ngôn ngữ kịch bản mặc định. Ngôn ngữ kịch bản được chỉ định làm loại nội dung (e. g. , "văn bản/javascript"). Tác giả phải cung cấp một giá trị cho thuộc tính này. Không có giá trị mặc định cho thuộc tính này. ngôn ngữ = cdata [CI]Không dùng nữa. Thuộc tính này chỉ định ngôn ngữ kịch bản của nội dung của phần tử này. Giá trị của nó là một mã định danh cho ngôn ngữ, nhưng vì các mã định danh này không phải là tiêu chuẩn nên thuộc tính này không được dùng nữa để thay thế cho loại. defer [CI]Khi được đặt, thuộc tính boolean này cung cấp gợi ý cho tác nhân người dùng rằng tập lệnh sẽ không tạo bất kỳ nội dung tài liệu nào (e. g. , không có "tài liệu. write" trong javascript) và do đó, tác nhân người dùng có thể tiếp tục phân tích cú pháp và hiển thị

Các thuộc tính được xác định ở nơi khác

Phần tử SCRIPT đặt một tập lệnh trong tài liệu. Phần tử này có thể xuất hiện nhiều lần trong HEAD hoặc BODY của tài liệu HTML

Tập lệnh có thể được xác định trong nội dung của phần tử SCRIPT hoặc trong một tệp bên ngoài. Nếu thuộc tính src không được đặt, tác nhân người dùng phải diễn giải nội dung của phần tử dưới dạng tập lệnh. Nếu src có giá trị URI, tác nhân người dùng phải bỏ qua nội dung của phần tử và truy xuất tập lệnh qua URI. Lưu ý rằng thuộc tính bộ ký tự đề cập đến mã hóa ký tự của tập lệnh được chỉ định bởi thuộc tính src;

Các tập lệnh được đánh giá bởi các công cụ tập lệnh mà tác nhân người dùng phải biết

Cú pháp của dữ liệu tập lệnh phụ thuộc vào ngôn ngữ tập lệnh

Vì HTML không dựa vào một ngôn ngữ kịch bản cụ thể, tác giả tài liệu phải thông báo rõ ràng cho tác nhân người dùng ngôn ngữ của từng tập lệnh. Điều này có thể được thực hiện thông qua khai báo mặc định hoặc khai báo cục bộ

Ngôn ngữ kịch bản mặc định

Tác giả nên chỉ định ngôn ngữ kịch bản mặc định cho tất cả các tập lệnh trong tài liệu bằng cách đưa khai báo META sau vào HEAD

trong đó "loại" là loại nội dung đặt tên cho ngôn ngữ kịch bản. Ví dụ về các giá trị bao gồm "text/tcl", "text/javascript", "text/vbscript"

Trong trường hợp không có khai báo META, mặc định có thể được đặt theo tiêu đề HTTP "Content-Script-Type"

    Content-Script-Type: type

trong đó "loại" lại là một loại nội dung đặt tên cho ngôn ngữ kịch bản

Tác nhân người dùng nên xác định ngôn ngữ kịch bản mặc định cho tài liệu theo các bước sau (mức độ ưu tiên cao nhất đến thấp nhất)

  1. Nếu bất kỳ khai báo META nào chỉ định "Kiểu tập lệnh nội dung", thì phần cuối cùng trong luồng ký tự sẽ xác định ngôn ngữ tập lệnh mặc định
  2. Mặt khác, nếu bất kỳ tiêu đề HTTP nào chỉ định "Kiểu tập lệnh nội dung", thì tiêu đề cuối cùng trong luồng ký tự sẽ xác định ngôn ngữ tập lệnh mặc định

Các tài liệu không chỉ định thông tin ngôn ngữ tập lệnh mặc định và có chứa các thành phần chỉ định tập lệnh sự kiện nội tại là không chính xác. Tác nhân người dùng vẫn có thể cố gắng diễn giải các tập lệnh được chỉ định không chính xác nhưng không bắt buộc phải. Công cụ soạn thảo sẽ tạo thông tin ngôn ngữ kịch bản mặc định để giúp tác giả tránh tạo tài liệu không chính xác

Khai báo cục bộ của ngôn ngữ kịch bản

Thuộc tính loại phải được chỉ định cho từng phiên bản phần tử SCRIPT trong tài liệu. Giá trị của thuộc tính loại cho phần tử SCRIPT sẽ ghi đè ngôn ngữ kịch bản mặc định cho phần tử đó

Trong ví dụ này, chúng tôi khai báo ngôn ngữ kịch bản mặc định là "text/tcl". Chúng tôi bao gồm một SCRIPT trong tiêu đề, có tập lệnh nằm trong tệp bên ngoài và ở ngôn ngữ tập lệnh "text/vbscript". Chúng tôi cũng bao gồm một SCRIPT trong nội dung chứa tập lệnh riêng được viết bằng "text/javascript"



A document with SCRIPT







Tham chiếu đến các phần tử HTML từ tập lệnh

Mỗi ngôn ngữ kịch bản có các quy ước riêng để tham chiếu đến các đối tượng HTML từ bên trong một tập lệnh. Thông số kỹ thuật này không xác định cơ chế chuẩn để tham chiếu đến các đối tượng HTML

Tuy nhiên, các tập lệnh nên đề cập đến một phần tử theo tên được chỉ định của nó. Các công cụ tạo tập lệnh nên tuân thủ các quy tắc ưu tiên sau khi xác định một phần tử. thuộc tính tên được ưu tiên hơn id nếu cả hai được đặt. Mặt khác, cái này hay cái kia có thể được sử dụng

Ghi chú. Các tác giả của tài liệu HTML được khuyến cáo rằng các thay đổi có thể xảy ra trong lĩnh vực các sự kiện nội tại (e. g. , cách các tập lệnh được liên kết với các sự kiện). Nghiên cứu trong lĩnh vực này được thực hiện bởi các thành viên của Nhóm Làm việc Mô hình Đối tượng Tài liệu W3C (xem Trang web W3C tại http. //www. w3. org/ để biết thêm thông tin)

định nghĩa thuộc tính

onload = script [CT]Sự kiện onload xảy ra khi tác nhân người dùng tải xong một cửa sổ hoặc tất cả các khung trong FRAMESET. Thuộc tính này có thể được sử dụng với các phần tử BODY và ​​FRAMESET. onunload = script [CT]Sự kiện onunload xảy ra khi tác nhân người dùng xóa tài liệu khỏi cửa sổ hoặc khung. Thuộc tính này có thể được sử dụng với các phần tử BODY và ​​FRAMESET. onclick = script [CT]Sự kiện onclick xảy ra khi nút thiết bị trỏ được nhấp vào một phần tử. Thuộc tính này có thể được sử dụng với hầu hết các yếu tố. ondblclick = script [CT]Sự kiện ondblclick xảy ra khi nút thiết bị trỏ được nhấp đúp vào một phần tử. Thuộc tính này có thể được sử dụng với hầu hết các yếu tố. onmousedown = script [CT]Sự kiện onmousedown xảy ra khi nút thiết bị trỏ được nhấn trên một phần tử. Thuộc tính này có thể được sử dụng với hầu hết các yếu tố. onmouseup = script [CT]Sự kiện onmouseup xảy ra khi nhả nút thiết bị trỏ trên một phần tử. Thuộc tính này có thể được sử dụng với hầu hết các yếu tố. onmouseover = script [CT]Sự kiện onmouseover xảy ra khi thiết bị trỏ được di chuyển lên một phần tử. Thuộc tính này có thể được sử dụng với hầu hết các yếu tố. onmousemove = script [CT]Sự kiện onmousemove xảy ra khi thiết bị trỏ được di chuyển khi nó ở trên một phần tử. Thuộc tính này có thể được sử dụng với hầu hết các yếu tố. onmouseout = script [CT]Sự kiện onmouseout xảy ra khi thiết bị trỏ được di chuyển ra khỏi phần tử. Thuộc tính này có thể được sử dụng với hầu hết các yếu tố. onfocus = script [CT]Sự kiện onfocus xảy ra khi một phần tử nhận tiêu điểm bằng thiết bị trỏ hoặc bằng cách điều hướng theo tab. Thuộc tính này có thể được sử dụng với các yếu tố sau. A, KHU VỰC, NHÃN, ĐẦU VÀO, CHỌN, VĂN BẢN VÀ NÚT. onblur = script [CT]Sự kiện onblur xảy ra khi một phần tử mất tiêu điểm do thiết bị trỏ hoặc do điều hướng theo tab. Nó có thể được sử dụng với các yếu tố tương tự như onfocus. onkeypress = script [CT]Sự kiện onkeypress xảy ra khi một phím được nhấn và nhả trên một phần tử. Thuộc tính này có thể được sử dụng với hầu hết các yếu tố. onkeydown = script [CT]Sự kiện onkeydown xảy ra khi một phím được nhấn xuống trên một phần tử. Thuộc tính này có thể được sử dụng với hầu hết các yếu tố. onkeyup = script [CT]Sự kiện onkeyup xảy ra khi một phím được giải phóng trên một phần tử. Thuộc tính này có thể được sử dụng với hầu hết các yếu tố. onsubmit = script [CT]Sự kiện onsubmit xảy ra khi một biểu mẫu được gửi. Nó chỉ áp dụng cho phần tử MẪU. onreset = script [CT]Sự kiện onreset xảy ra khi một biểu mẫu được đặt lại. Nó chỉ áp dụng cho phần tử MẪU. onselect = script [CT]Sự kiện onselect xảy ra khi người dùng chọn một số văn bản trong trường văn bản. Thuộc tính này có thể được sử dụng với các phần tử INPUT và TEXTAREA. onchange = script [CT]Sự kiện onchange xảy ra khi một điều khiển mất tiêu điểm đầu vào và giá trị của nó đã bị sửa đổi kể từ khi đạt được tiêu điểm. Thuộc tính này áp dụng cho các phần tử sau. ĐẦU VÀO, CHỌN và VĂN BẢN

Có thể liên kết một hành động với một số sự kiện nhất định xảy ra khi người dùng tương tác với tác nhân người dùng. Mỗi "sự kiện nội tại" được liệt kê ở trên có một giá trị là tập lệnh. Tập lệnh được thực thi bất cứ khi nào sự kiện xảy ra cho phần tử đó. Cú pháp của dữ liệu tập lệnh phụ thuộc vào ngôn ngữ tập lệnh

Các phần tử điều khiển như INPUT, SELECT, BUTTON, TEXTAREA và LABEL đều phản hồi các sự kiện nội tại nhất định. Khi các phần tử này không xuất hiện trong một biểu mẫu, chúng có thể được sử dụng để tăng cường giao diện người dùng đồ họa của tài liệu

Chẳng hạn, tác giả có thể muốn bao gồm các nút nhấn trong tài liệu của họ không gửi biểu mẫu nhưng vẫn giao tiếp với máy chủ khi chúng được kích hoạt

Các ví dụ sau đây cho thấy một số hành vi giao diện người dùng và kiểm soát có thể dựa trên các sự kiện nội tại

Trong ví dụ sau, tên người dùng là trường văn bản bắt buộc. Khi người dùng cố gắng rời khỏi trường, sự kiện onblur sẽ gọi hàm JavaScript để xác nhận rằng tên người dùng có giá trị chấp nhận được

Đây là một ví dụ JavaScript khác

Đây là một ví dụ VBScript về trình xử lý sự kiện cho trường văn bản

        
    

Đây là ví dụ tương tự sử dụng Tcl

    
    

Dưới đây là một ví dụ JavaScript để ràng buộc sự kiện trong một tập lệnh. Đầu tiên, đây là một trình xử lý nhấp chuột đơn giản

________số 8

Đây là một trình xử lý cửa sổ thú vị hơn

    

Trong Tcl này trông giống như

0

Lưu ý rằng "tài liệu. write" hoặc các câu lệnh tương đương trong trình xử lý sự kiện nội tại tạo và ghi vào tài liệu mới thay vì sửa đổi tài liệu hiện tại

Các tập lệnh được thực thi khi tài liệu được tải có thể tự động sửa đổi nội dung của tài liệu. Khả năng làm như vậy phụ thuộc vào chính ngôn ngữ kịch bản (e. g. , tài liệu. write" trong mô hình đối tượng HTML được một số nhà cung cấp hỗ trợ)

Việc sửa đổi động của một tài liệu có thể được mô hình hóa như sau

  1. Tất cả các phần tử SCRIPT được đánh giá theo thứ tự khi tài liệu được tải
  2. Tất cả các cấu trúc tập lệnh trong một phần tử SCRIPT nhất định tạo ra CDATA SGML đều được đánh giá. Văn bản được tạo kết hợp của chúng được chèn vào tài liệu thay cho phần tử SCRIPT
  3. CDATA đã tạo được đánh giá lại

Các tài liệu HTML bị hạn chế tuân theo HTML DTD cả trước và sau khi xử lý bất kỳ phần tử SCRIPT nào

Ví dụ sau minh họa cách tập lệnh có thể sửa đổi tài liệu một cách linh hoạt. kịch bản sau

1

Có tác dụng tương tự như đánh dấu HTML này

2

Các phần sau thảo luận về cách tác giả có thể tạo tài liệu hoạt động cho tác nhân người dùng không hỗ trợ tập lệnh

thẻ bắt đầu. bắt buộc, Thẻ kết thúc. cần thiết

Phần tử NOSCRIPT cho phép tác giả cung cấp nội dung thay thế khi tập lệnh không được thực thi. Nội dung của phần tử NOSCRIPT chỉ được hiển thị bởi tác nhân người dùng nhận biết tập lệnh trong các trường hợp sau
  • Tác nhân người dùng được định cấu hình để không đánh giá tập lệnh
  • Tác nhân người dùng không hỗ trợ ngôn ngữ kịch bản được gọi bởi phần tử SCRIPT trước đó trong tài liệu

Tác nhân người dùng không hỗ trợ tập lệnh phía máy khách phải hiển thị nội dung của phần tử này

Trong ví dụ sau, tác nhân người dùng thực thi SCRIPT sẽ bao gồm một số dữ liệu được tạo động trong tài liệu. Nếu tác nhân người dùng không hỗ trợ tập lệnh, người dùng vẫn có thể truy xuất dữ liệu thông qua liên kết

3

Tác nhân người dùng không nhận ra phần tử SCRIPT có thể sẽ hiển thị nội dung của phần tử đó dưới dạng văn bản. Một số công cụ tạo tập lệnh, bao gồm các công cụ dành cho ngôn ngữ JavaScript, VBScript và Tcl cho phép các câu lệnh tập lệnh được đính kèm trong một nhận xét SGML. Do đó, các tác nhân người dùng không nhận ra phần tử SCRIPT sẽ bỏ qua nhận xét trong khi các công cụ tạo tập lệnh thông minh sẽ hiểu rằng tập lệnh trong nhận xét sẽ được thực thi

Một giải pháp khác cho vấn đề là giữ các tập lệnh trong các tài liệu bên ngoài và tham chiếu chúng bằng thuộc tính src

Nhận xét tập lệnh trong JavaScript
Công cụ JavaScript cho phép chuỗi "" từ trình phân tích cú pháp JavaScript.

Tập lệnh nhận xét trong VBScript
Trong VBScript, một ký tự trích dẫn đơn sẽ khiến phần còn lại của dòng hiện tại được coi là nhận xét. Do đó, nó có thể được sử dụng để ẩn chuỗi "-->" khỏi VBScript chẳng hạn.

5

Nhận xét tập lệnh trong TCL
Trong Tcl, ký tự "#" nhận xét phần còn lại của dòng.

Ghi chú. Một số trình duyệt đóng nhận xét trên ký tự ">" đầu tiên, do đó, để ẩn nội dung tập lệnh khỏi các trình duyệt đó, bạn có thể chuyển vị trí các toán hạng cho các toán tử quan hệ và dịch chuyển (e. g. , hãy sử dụng "y < x" thay vì "x > y") hoặc sử dụng các lối thoát phụ thuộc vào ngôn ngữ tập lệnh cho ">"

Chúng ta nên bao gồm tập lệnh trong HTML ở đâu?

Bạn có thể đặt bất kỳ số lượng tập lệnh nào trong tài liệu HTML. Tập lệnh có thể được đặt trong .

Cú pháp chính xác của thẻ script trong HTML là gì?

Cú pháp của thẻ script được đưa ra bên dưới.

Cách chính xác để triển khai tập lệnh trên trang web của bạn là gì?

Để thêm tập lệnh vào trang của bạn, hãy bắt đầu bằng cách chèn các thẻ này . Trong nhiều trường hợp, bạn sẽ đặt các thẻ

Thẻ nào dùng để thêm script trong HTML?

Thẻ