2012-03-09 44 views
8

Tôi đã thấy một số câu hỏi cụ thể về vấn đề này - nhận được typeerror object doesn't support this property or method trong IE8, mỗi câu trả lời cụ thể của nó.Giải pháp chung cho "đối tượng typeerror không hỗ trợ thuộc tính hoặc phương thức này" trên IE8 là gì?

Giả sử tôi có một trang web lớn có nhiều mã ... Tôi không biết đoạn mã cụ thể nào gây ra lỗi này.

Có phương pháp chung để gỡ lỗi này không? Tôi đã thử với Công cụ dành cho nhà phát triển IE và nó không bị lỗi. Điều này có phải do cú pháp javascript không chính xác không? Tôi có nên thử thứ gì đó như js lint không?

Cách chính xác, chung để xác định và giải quyết vấn đề này là gì?

+0

'typeerror' không thể là' syntaxerror'. Người ta có thể gỡ lỗi nó trong trình gỡ lỗi tích hợp, chỉ cần nhập chế độ gỡ lỗi. – kirilloid

+3

@kirilloid - vì vậy bạn đề nghị tôi chỉ cần bước qua toàn bộ cơ sở mã? Tôi đoán đó là một lựa chọn. Chúa ơi, tôi ghét IE. – ripper234

+0

Không. Khi bạn vào chế độ gỡ lỗi, nó sẽ tự động dừng lại trên các lỗi và bạn sẽ có thể nhìn xung quanh và kiểm tra tất cả các giá trị, trước lỗi. – kirilloid

Trả lời

11

OK, vì vậy tôi đã chuyển sang giải pháp cũ và bắt đầu xóa các khối mã lớn khỏi dự án của mình cho đến khi sự cố "cố định". Điều này đã giúp tôi xác định vị trí tệp có vấn đề.

Tôi sau đó tiến hành xóa chức năng theo chức năng cho đến khi tôi tìm thấy đoạn mã nhỏ này: str.trim(). A quick search turned this up.

Cập nhật: Thực ra, tôi mới nhận ra điều gì đó ... vấn đề chỉ là một ngoại lệ bình thường và chuyển nó đến alert() che giấu các chi tiết. Nếu bạn để các ngoại lệ như vậy đi lên đầu, thì bất kỳ trình duyệt nào bạn sử dụng sẽ hiển thị thông tin dòng hữu ích. Vì vậy, lần sau nó xảy ra với tôi, tôi sẽ tìm cách để làm cho các ngoại lệ bay cao bên ngoài chức năng cấp cao nhất. catch không có trong mã của tôi, đó là jQuery, vì vậy tôi vẫn không chắc chắn làm thế nào để làm điều đó.

Các vấn đề liên quan