Làm cách nào để xóa nút văn bản trong javascript?
Nhận toàn quyền truy cập vào JavaScript. The Definitive Guide, 5th Edition và hơn 60 nghìn đầu sách khác, với 10 ngày dùng thử miễn phí O'Reilly Show Ngoài ra còn có các sự kiện trực tuyến trực tiếp, nội dung tương tác, tài liệu chuẩn bị chứng nhận, v.v. Việc xóa InternalHTML rất đơn giản, tuy nhiên, nó có thể không phù hợp với các ứng dụng hiệu suất cao vì nó gọi trình phân tích cú pháp HTML của trình duyệt
văn bảnnội dungCách tiếp cận thứ hai là xóa textContent. Nó tương tự như phương pháp trên. Phương pháp này nhanh hơn nhiều so với InternalHTML. Sử dụng trình duyệt textContent sẽ không gọi trình phân tích cú pháp HTML và ngay lập tức thay thế tất cả phần tử con của phần tử bằng một nút #text duy nhất
Thay vì xóa firstChild, hãy sử dụng lastChild để xóa phần tử cuối cùng nhanh hơn. Vòng lặp sẽ kiểm tra FirstChild trong trường hợp kiểm tra FirstChild nhanh hơn LastChild
Vòng lặp để loại bỏ mọi cách tiếp cận lastElementChild bảo toàn tất cả các phần tử không phải, (chẳng hạn như các nút #text và Hàm lấy một tham chiếu phần tử làm đối số của nó và loại bỏ tất cả các nút không mong muốn đó khỏi bên trong nó. Hàm hoạt động trực tiếp trên phần tử được đề cập, vì các đối tượng trong JavaScript được truyền theo tham chiếu – nghĩa là hàm nhận tham chiếu đến đối tượng ban đầu, không phải bản sao của nó. Đây là mã của hàm
Vì vậy, để xóa các nút không mong muốn đó từ bên trong phần tử 0, bạn chỉ cần làm điều này
Ngoài ra, để làm sạch toàn bộ tài liệu, bạn có thể làm điều này
Mặc dù tham chiếu thông thường sẽ là một nút 1, nhưng nó cũng có thể là một loại nút chứa phần tử khác, chẳng hạn như một nút 2. Chức năng này cũng không bị hạn chế khi làm việc với HTML và có thể hoạt động trên bất kỳ loại XML DOM nào khácTại sao phải làm sạch DOMKhi làm việc với DOM trong JavaScript, chúng tôi sử dụng các thuộc tính tiêu chuẩn như 3 và 4 để nhận các tham chiếu nút tương đối. Thật không may, sự phức tạp có thể phát sinh khi có khoảng trắng trong DOM, như trong ví dụ sau
Đối với hầu hết các trình duyệt hiện đại (ngoài IE8 trở về trước), mã HTML trước đó sẽ dẫn đến cấu trúc DOM sau
Ngắt dòng và tab bên trong cây đó xuất hiện dưới dạng khoảng trắng 5 nút. Vì vậy, ví dụ, nếu chúng ta bắt đầu với một tham chiếu đến phần tử 6, thì 7 sẽ không tham chiếu đến phần tử 8. Thay vào đó, nó sẽ đề cập đến nút khoảng trắng 5 (ngắt dòng và tab) xuất hiện trước nó. Hoặc, nếu chúng ta bắt đầu với một tham chiếu đến phần tử 8, thì 1 sẽ không phải là phần tử đầu tiên của 2, nó sẽ là khoảng trắng trước nóNhận xét HTML cũng là các nút và hầu hết các trình duyệt cũng lưu giữ chúng trong DOM – như chúng nên làm, bởi vì trình duyệt không quyết định nút nào quan trọng và nút nào không. Nhưng rất hiếm khi các tập lệnh thực sự muốn có dữ liệu trong các bình luận. Nhiều khả năng các nhận xét (và khoảng trắng xen vào) là các nút "rác" không mong muốn Có một số cách để xử lý các nút này. Ví dụ: bằng cách lặp qua chúng
Cách tiếp cận đơn giản nhất, thiết thực nhất, chỉ đơn giản là loại bỏ chúng. Vì vậy, đó là chức năng của hàm Sau khi phần tử 4 từ ví dụ ban đầu được làm sạch, các tham chiếu 7 và 1 sẽ trỏ đến các phần tử dự kiến. DOM đã được làm sạch được hiển thị bên dưới
Cách chức năng hoạt độngHàm 8, được lặp lại bên dưới
Vì vậy, mỗi phần tử con của phần tử được truyền cho Trong mỗi lần gọi 2 của phần tử, loại bỏ bất kỳ nút 3 nào (có 4 trên 8) hoặc nút 5 (với 4 trên 3) có giá trị không là gì ngoài khoảng trắng. Biểu thức chính quy thực sự là một phép thử nghịch đảo, tìm kiếm các nút không chứa các ký tự không phải khoảng trắngTất nhiên, chức năng này không xóa tất cả khoảng trắng. Bất kỳ khoảng trắng nào là một phần của nút 5 cũng chứa văn bản không phải khoảng trắng, đều được giữ nguyên. Vì vậy, các nút 5 duy nhất bị ảnh hưởng là những nút chỉ có khoảng trắngLưu ý rằng iterator phải truy vấn 9 mỗi lần, thay vì lưu trước 0, điều này thường hiệu quả hơn. Chúng tôi đã làm điều này bởi vì chúng tôi đang loại bỏ các nút khi chúng tôi tiếp tục, điều này rõ ràng sẽ thay đổi độ dài của bộ sưu tậpChia sẻ bài viết nàyJames Edwards James là nhà phát triển web tự do có trụ sở tại Vương quốc Anh, chuyên phát triển ứng dụng JavaScript và xây dựng các trang web có thể truy cập. Với kinh nghiệm chuyên môn hơn một thập kỷ, ông là một tác giả đã xuất bản, một blogger và diễn giả thường xuyên, đồng thời là người ủng hộ thẳng thắn cho sự phát triển dựa trên tiêu chuẩn Làm cách nào để xóa một nút trong JavaScript?Xóa nút khỏi DOM
. a node itself can be removed with remove() .
Làm cách nào để xóa nút con trong JavaScript?Có thể xóa các nút con khỏi nút cha bằng removeChild() và có thể xóa chính nút đó bằng remove(). Một phương pháp khác để loại bỏ tất cả con của một nút là đặt thuộc tính innerHTML=””, nó là một chuỗi rỗng tạo ra cùng một đầu ra. Phương pháp này không được ưu tiên sử dụng. Ví dụ 1. Sử dụng “removeChild()”.
Nút văn bản trong JavaScript là gì?Một nút văn bản đóng gói nội dung ký tự XML . Một nút văn bản có thể không có hoặc có một nút cha. Nội dung của nút văn bản có thể trống. Tuy nhiên, trừ khi nút cha của nút văn bản trống, nội dung của nút văn bản không thể là một chuỗi rỗng.
Xóa () trong JavaScript là gì?Phương thức remove() xóa một phần tử (hoặc nút) khỏi tài liệu . |