Sự khác biệt chính giữa JavaScript trong IE và JavaScript trong các trình duyệt hiện đại (ví dụ: Firefox) có thể là do cùng những lý do đằng sau sự khác biệt trong trình duyệt chéo CSS / (X) HTML. Ngày trước không có tiêu chuẩn thực tế; IE / Netscape / Opera đã gây ra một cuộc chiến tranh sân cỏ, thực hiện hầu hết các thông số kỹ thuật, nhưng cũng bỏ qua một số thông số kỹ thuật cũng như tạo ra các thông số kỹ thuật độc quyền để giành lợi thế hơn nhau. Tôi có thể tiếp tục, nhưng hãy bỏ qua trước khi phát hành IE8: JavaScript bị tránh / bị khinh miệt trong nhiều năm, và với sự nổi lên của FF và sự khinh thường của webcomm, IE đã chọn tập trung chủ yếu vào việc cải tiến CSS của họ từ IE6 trở đi. Và về cơ bản đã để lại hỗ trợ DOM. Hỗ trợ DOM của IE8 cũng có thể là của IE6, được tung ra vào năm 2001 .... vì vậy hỗ trợ DOM của IE chậm hơn các trình duyệt hiện đại gần một thập kỷ. Nếu bạn đang gặp phải sự khác biệt về JavaScript cụ thể đối với một công cụ bố cục, tốt nhất bạn nên tấn công nó giống như cách chúng tôi đã xử lý các vấn đề CSS; Nhắm mục tiêu trình duyệt đó. KHÔNG SỬ DỤNG TRÌNH DUYỆT SNIFFING, hãy sử dụng tính năng phát hiện để phát hiện trình duyệt của bạn / mức độ hỗ trợ DOM của nó.
JScript không phải là triển khai ECMAScript của riêng IE; JScript là câu trả lời của IE cho JavaScript của Netscape, cả hai đều ra đời trước ECMAScript.
Đối với các thuộc tính type trên phần tử script, type = "text / javascript" là tiêu chuẩn mặc định (ít nhất là trong HTML5), vì vậy bạn không bao giờ cần thuộc tính type trừ khi tập lệnh của bạn không phải là JavaScript.
Vì IE không hỗ trợ innerHTML ... thì innerHTML được phát minh bởi IE và cho đến ngày nay vẫn KHÔNG phải là một tiêu chuẩn DOM. Các trình duyệt khác đã áp dụng nó vì nó hữu ích, đó là lý do tại sao bạn có thể sử dụng nó trên nhiều trình duyệt. Đối với các bảng thay đổi động, MSDN cho biết "do cấu trúc cụ thể được yêu cầu bởi các bảng, các thuộc tính innerText và innerHTML của bảng và các đối tượng tr là chỉ đọc." Tôi không biết ban đầu điều đó đúng bao nhiêu phần trăm, nhưng rõ ràng là các trình duyệt hiện đại đã tìm ra điều đó trong khi giải quyết sự phức tạp của bố cục bảng.
Tôi thực sự khuyên bạn nên đọc PPK trên JavaScript
Jeremy Keith's DOM Scripting JavaScript
của Douglas Crockford : The Good Parts
và JavaScript Khởi đầu của Christian Hellman với DOM Scripting và Ajax để nắm rõ hơn về JavaScript.
Liên quan đến Khung / Thư viện, nếu bạn chưa nắm rõ về JavaScript, bạn nên tránh chúng. Cách đây 2 năm, tôi đã rơi vào bẫy của jQuery, và trong khi tôi có thể tạo ra những kỳ tích tuyệt vời, tôi chưa bao giờ học được một điều chết tiệt nào về việc viết mã JavaScript đúng cách. Tóm lại, jQuery là một Bộ công cụ DOM tuyệt vời, nhưng việc tôi không học được các cách đóng thích hợp, kế thừa nguyên mẫu, v.v., không chỉ giúp cải thiện kiến thức cá nhân của tôi mà công việc của tôi bắt đầu nhận về hiệu suất rất lớn vì tôi không có manh mối nào về việc tôi đang làm.
JavaScript là ngôn ngữ của trình duyệt; nếu bạn là kỹ sư phía máy khách / phía trước, điều quan trọng nhất là bạn phải ra lệnh cho JavaScript. Node.js đang mang lại độ nghiêng hoàn toàn cho JavaScript, tôi thấy những bước tiến lớn được thực hiện hàng ngày trong quá trình phát triển của nó; JavaScript phía máy chủ sẽ là một tiêu chuẩn trong tương lai rất gần. Tôi đề cập đến vấn đề này để nhấn mạnh thêm rằng JavaScript hiện tại và sẽ quan trọng như thế nào.
JavaScript sẽ tạo ra nhiều làn sóng hơn Rails.
Chúc bạn viết kịch bản vui vẻ!