Sự khác biệt giữa HTML và HTML DOM là gì?

Mô hình đối tượng tài liệu (DOM) là một API lập trình cho các tài liệu HTML và XML. Nó xác định cấu trúc logic của tài liệu và cách tài liệu được truy cập và thao tác. Trong đặc tả DOM, thuật ngữ "tài liệu" được sử dụng theo nghĩa rộng - ngày càng nhiều, XML đang được sử dụng như một cách biểu diễn nhiều loại thông tin khác nhau có thể được lưu trữ trong các hệ thống khác nhau và phần lớn thông tin này theo truyền thống sẽ được coi là . Tuy nhiên, XML trình bày dữ liệu này dưới dạng tài liệu và DOM có thể được sử dụng để quản lý dữ liệu này

Với Mô hình đối tượng tài liệu, lập trình viên có thể tạo và xây dựng tài liệu, điều hướng cấu trúc của chúng và thêm, sửa đổi hoặc xóa các phần tử và nội dung. Mọi thứ được tìm thấy trong tài liệu HTML hoặc XML đều có thể được truy cập, thay đổi, xóa hoặc thêm bằng cách sử dụng Mô hình đối tượng tài liệu, với một vài ngoại lệ - cụ thể là các giao diện DOM cho tập hợp con bên trong và tập hợp con bên ngoài chưa được chỉ định

Là một đặc điểm kỹ thuật của W3C, một mục tiêu quan trọng của Mô hình đối tượng tài liệu là cung cấp một giao diện lập trình tiêu chuẩn có thể được sử dụng trong nhiều môi trường và ứng dụng khác nhau. Mô hình đối tượng tài liệu có thể được sử dụng với bất kỳ ngôn ngữ lập trình nào. Để cung cấp đặc tả chính xác, không phụ thuộc vào ngôn ngữ của các giao diện Mô hình đối tượng tài liệu, chúng tôi đã chọn xác định các đặc tả trong OMG IDL, như được định nghĩa trong CORBA 2. 2 đặc điểm kỹ thuật. Ngoài đặc tả OMG IDL, chúng tôi cung cấp các ràng buộc ngôn ngữ cho Java và ECMAScript (ngôn ngữ kịch bản tiêu chuẩn ngành dựa trên JavaScript và JScript). Ghi chú. OMG IDL chỉ được sử dụng như một cách không phụ thuộc vào ngôn ngữ và triển khai trung lập để chỉ định giao diện. Nhiều IDL khác có thể đã được sử dụng;

Mô hình đối tượng tài liệu là gì

Mô hình đối tượng tài liệu là API lập trình cho tài liệu. Bản thân mô hình đối tượng gần giống với cấu trúc của các tài liệu mà nó mô hình hóa. Chẳng hạn, hãy xem xét bảng này, được lấy từ một tài liệu HTML

       
      
       
      Shady Grove
      Aeolian 
       
      
      Over the River, Charlie
      Dorian 
       
      
      
    

Mô hình đối tượng tài liệu đại diện cho bảng này như thế này


Sự khác biệt giữa HTML và HTML DOM là gì?

Biểu diễn DOM của bảng ví dụ

Trong Mô hình Đối tượng Tài liệu, các tài liệu có cấu trúc logic rất giống một cái cây; . Tuy nhiên, Mô hình đối tượng tài liệu không chỉ định rằng các tài liệu được triển khai dưới dạng cây hay lùm, cũng như không chỉ định cách thức triển khai mối quan hệ giữa các đối tượng theo bất kỳ cách nào. Nói cách khác, mô hình đối tượng chỉ định mô hình logic cho giao diện lập trình và mô hình logic này có thể được triển khai theo bất kỳ cách nào mà một triển khai cụ thể thấy thuận tiện. Trong đặc tả này, chúng tôi sử dụng thuật ngữ mô hình cấu trúc để mô tả biểu diễn dạng cây của một tài liệu; . Một thuộc tính quan trọng của các mô hình cấu trúc DOM là đẳng cấu cấu trúc. nếu bất kỳ hai triển khai Mô hình đối tượng tài liệu nào được sử dụng để tạo biểu diễn của cùng một tài liệu, thì chúng sẽ tạo ra cùng một mô hình cấu trúc, với các đối tượng và mối quan hệ chính xác giống nhau

Tên "Mô hình đối tượng tài liệu" được chọn vì nó là một "mô hình đối tượng" được sử dụng theo nghĩa thiết kế hướng đối tượng truyền thống. tài liệu được mô hình hóa bằng cách sử dụng các đối tượng và mô hình không chỉ bao gồm cấu trúc của tài liệu mà còn bao gồm cả hành vi của tài liệu và các đối tượng chứa tài liệu đó. Nói cách khác, các nút trong sơ đồ trên không đại diện cho cấu trúc dữ liệu, chúng đại diện cho các đối tượng, có chức năng và nhận dạng. Là một mô hình đối tượng, Mô hình đối tượng tài liệu xác định

  • các giao diện và đối tượng được sử dụng để thể hiện và thao tác với tài liệu
  • ngữ nghĩa của các giao diện và đối tượng này - bao gồm cả hành vi và thuộc tính
  • các mối quan hệ và sự hợp tác giữa các giao diện và đối tượng này

Cấu trúc của các tài liệu SGML theo truyền thống được biểu diễn bằng một mô hình dữ liệu trừu tượng, không phải bằng một mô hình đối tượng. Trong một mô hình dữ liệu trừu tượng, mô hình tập trung vào dữ liệu. Trong các ngôn ngữ lập trình hướng đối tượng, bản thân dữ liệu được đóng gói trong các đối tượng ẩn dữ liệu, bảo vệ dữ liệu khỏi thao tác trực tiếp từ bên ngoài. Các chức năng được liên kết với các đối tượng này xác định cách các đối tượng có thể được thao tác và chúng là một phần của mô hình đối tượng

Mô hình đối tượng tài liệu hiện bao gồm hai phần, DOM Core và DOM HTML. Lõi DOM đại diện cho chức năng được sử dụng cho các tài liệu XML và cũng là cơ sở cho DOM HTML. Tất cả các triển khai DOM phải hỗ trợ các giao diện được liệt kê là "cơ bản" trong đặc tả Lõi; . Đặc tả HTML DOM cấp 1 xác định chức năng bổ sung cần thiết cho các tài liệu HTML

Mô hình đối tượng tài liệu không phải là gì

Phần này được thiết kế để cung cấp sự hiểu biết chính xác hơn về Mô hình Đối tượng Tài liệu bằng cách phân biệt nó với các hệ thống khác có vẻ giống nó.

  • Mặc dù Mô hình Đối tượng Tài liệu chịu ảnh hưởng mạnh mẽ của HTML Động, nhưng ở Cấp độ 1, nó không triển khai tất cả HTML Động. Đặc biệt, các sự kiện vẫn chưa được xác định. Cấp độ 1 được thiết kế để đặt nền tảng vững chắc cho loại chức năng này bằng cách cung cấp một mô hình tài liệu mạnh mẽ, linh hoạt
  • Mô hình đối tượng tài liệu không phải là một đặc tả nhị phân. Các chương trình Mô hình đối tượng tài liệu được viết bằng cùng một ngôn ngữ sẽ tương thích với mã nguồn trên các nền tảng, nhưng Mô hình đối tượng tài liệu không xác định bất kỳ dạng khả năng tương tác nhị phân nào
  • Mô hình đối tượng tài liệu không phải là cách duy trì các đối tượng thành XML hoặc HTML. Thay vì chỉ định cách các đối tượng có thể được biểu diễn trong XML, Mô hình Đối tượng Tài liệu chỉ định cách các tài liệu XML và HTML được biểu diễn dưới dạng các đối tượng, để chúng có thể được sử dụng trong các chương trình hướng đối tượng
  • Mô hình đối tượng tài liệu không phải là một tập hợp các cấu trúc dữ liệu, nó là một mô hình đối tượng chỉ định các giao diện. Mặc dù tài liệu này chứa các sơ đồ hiển thị mối quan hệ cha/con, đây là những mối quan hệ logic được xác định bởi các giao diện lập trình, không phải là biểu diễn của bất kỳ cấu trúc dữ liệu nội bộ cụ thể nào
  • Mô hình đối tượng tài liệu không xác định "ngữ nghĩa bên trong thực sự" của XML hoặc HTML. Ngữ nghĩa của các ngôn ngữ đó được xác định bởi chính các ngôn ngữ đó. Mô hình Đối tượng Tài liệu là một mô hình lập trình được thiết kế để tôn trọng các ngữ nghĩa này. Mô hình Đối tượng Tài liệu không có bất kỳ sự phân nhánh nào đối với cách bạn viết các tài liệu XML và HTML;
  • Mô hình Đối tượng Tài liệu, mặc dù tên của nó, không phải là đối thủ cạnh tranh của Mô hình Đối tượng Thành phần (COM). COM, giống như CORBA, là một cách độc lập với ngôn ngữ để chỉ định các giao diện và đối tượng; . DOM có thể được triển khai bằng các hệ thống không phụ thuộc vào ngôn ngữ như COM hoặc CORBA;

Mô hình đối tượng tài liệu đến từ đâu

Mô hình Đối tượng Tài liệu có nguồn gốc như một đặc điểm kỹ thuật để cho phép các tập lệnh JavaScript và chương trình Java có thể di động giữa các trình duyệt web. HTML động là tổ tiên trực tiếp của Mô hình đối tượng tài liệu và ban đầu nó được nghĩ chủ yếu về mặt trình duyệt. Tuy nhiên, khi Nhóm làm việc về mô hình đối tượng tài liệu được thành lập, nó cũng được tham gia bởi các nhà cung cấp trong các lĩnh vực khác, bao gồm các trình soạn thảo HTML hoặc XML và các kho lưu trữ tài liệu. Một số nhà cung cấp này đã làm việc với SGML trước khi XML được phát triển; . Một số nhà cung cấp này cũng đã phát triển các mô hình đối tượng của riêng họ cho các tài liệu để cung cấp các API lập trình cho các trình soạn thảo SGML/XML hoặc kho lưu trữ tài liệu và các mô hình đối tượng này cũng đã ảnh hưởng đến Mô hình Đối tượng Tài liệu.

Các thực thể và Lõi DOM

Trong các giao diện DOM cơ bản, không có đối tượng đại diện cho các thực thể. Tham chiếu ký tự số và tham chiếu đến thực thể được xác định trước trong HTML và XML, được thay thế bằng ký tự đơn tạo nên sự thay thế của thực thể. Ví dụ, trong

Đây là một con chó và một con mèo

"&" sẽ được thay thế bằng ký tự "&" và văn bản trong

phần tử sẽ tạo thành một chuỗi ký tự liên tục duy nhất. Biểu diễn của các thực thể chung, cả bên trong và bên ngoài, được xác định trong các giao diện mở rộng (XML) của đặc tả Mức 1. Ghi chú. Khi một biểu diễn DOM của một tài liệu được tuần tự hóa dưới dạng văn bản XML hoặc HTML, các ứng dụng sẽ cần kiểm tra từng ký tự trong dữ liệu văn bản để xem liệu nó có cần được thoát bằng cách sử dụng một thực thể số hoặc được xác định trước hay không. Không làm như vậy có thể dẫn đến HTML hoặc XML không hợp lệ

Giao diện DOM và triển khai DOM

DOM chỉ định các giao diện có thể được sử dụng để quản lý các tài liệu XML hoặc HTML. Điều quan trọng là phải nhận ra rằng các giao diện này là một trừu tượng - giống như "các lớp cơ sở trừu tượng" trong C++, chúng là phương tiện chỉ định cách truy cập và thao tác biểu diễn bên trong của ứng dụng đối với tài liệu. Cụ thể, các giao diện không ngụ ý một triển khai cụ thể cụ thể. Mỗi ứng dụng DOM được tự do duy trì các tài liệu trong bất kỳ biểu diễn thuận tiện nào, miễn là các giao diện được hiển thị trong thông số kỹ thuật này được hỗ trợ. Một số triển khai DOM sẽ là các chương trình hiện có sử dụng giao diện DOM để truy cập phần mềm được viết từ lâu trước khi đặc tả DOM tồn tại. Do đó, DOM được thiết kế để tránh các phụ thuộc triển khai;

  1. Các thuộc tính được xác định trong IDL không ngụ ý các đối tượng cụ thể phải có các thành viên dữ liệu cụ thể - trong các ràng buộc ngôn ngữ, chúng được dịch sang một cặp hàm get()/set(), không phải thành viên dữ liệu. (Các hàm chỉ đọc chỉ có một hàm get() trong các ràng buộc ngôn ngữ)
  2. Các ứng dụng DOM có thể cung cấp các giao diện và đối tượng bổ sung không có trong thông số kỹ thuật này và vẫn được coi là tuân thủ DOM
  3. Bởi vì chúng tôi chỉ định các giao diện chứ không phải các đối tượng thực tế sẽ được tạo, DOM không thể biết hàm tạo nào sẽ gọi để triển khai. Nói chung, người dùng DOM gọi các phương thức createXXX() trên lớp Tài liệu để tạo cấu trúc tài liệu và việc triển khai DOM tạo các biểu diễn bên trong của riêng họ về các cấu trúc này trong quá trình triển khai các hàm createXXX() của họ

Hạn chế của Cấp độ Một

Đặc tả DOM Cấp 1 được cố ý giới hạn ở những phương thức cần thiết để biểu diễn và thao tác cấu trúc và nội dung tài liệu. Các cấp độ trong tương lai của đặc tả DOM sẽ cung cấp

Sự khác biệt giữa HTML và DOM là gì?

DOM là Mô hình đối tượng tài liệu và đây là một API mô tả cách hoạt động của các trang web và được các trình duyệt triển khai. Tệp văn bản HTML phác thảo một trang và một loạt hộp đại diện cho các nút DOM khớp với các phần tử .

DOM nghĩa là gì trong HTML?

Mô hình đối tượng tài liệu Mô hình đối tượng tài liệu (DOM) là API lập trình dành cho tài liệu HTML và XML. Nó xác định cấu trúc logic của tài liệu và cách tài liệu được truy cập và thao tác.

Mục đích chính của DOM là gì?

Mô hình đối tượng tài liệu (DOM) là một giao diện lập trình cho các tài liệu web. Nó đại diện cho trang để các chương trình có thể thay đổi cấu trúc, kiểu và nội dung tài liệu . DOM đại diện cho tài liệu dưới dạng các nút và đối tượng; .