2010-08-18 27 views
5

Tôi gặp lỗi lạ với IE8 và tra cứu mã bưu điện. Nó có thể không được tra cứu mã bưu điện như vậy mà gây ra nó - chỉ là một cuộc gọi AJAX mà sửa đổi một lựa chọn. Tôi đã thiết lập một trang thử nghiệm here. Nếu bạn bấm vào Tìm địa chỉ, và sau đó bấm đúp (khá nhanh) trên một trong các địa chỉ nằm trong ranh giới của div giáp màu đỏ, bạn sẽ thấy lỗi dưới đây trong IE8.Vấn đề lạ với IE8 khi chọn AJAX

Lưu ý: Tôi thấy không phù hợp để tái tạo lỗi, nhưng nếu bạn cuộn danh sách địa chỉ xuống dưới và sau đó nhấp đúp chuột nhanh vào Holly Cottage, nó sẽ tạo lại lỗi.

IE8 Oddities

Nếu bất cứ ai có thể đổ vào ánh sáng trên hành vi kỳ quặc này nó muốn được nhiều đánh giá cao. Đây có phải là lỗi IE8 không?

+0

Tôi không nhận được bất kỳ kết quả nào với nút tìm địa chỉ. Kết quả của cuộc gọi là "Lỗi phân tích cú pháp: lỗi cú pháp, T_STRING không mong muốn trong /home/sitecrit/public_html/test/ie8-bug/postcode.php trên dòng 1" – Ivo

+0

@Ivo Đó là một lỗi lạ tuy nhiên không liên quan - xảy ra khi Tôi tải lên các tập tin php - nó kết hợp tất cả các dòng mã vào một và loại bỏ một loạt các khoảng trắng. Tôi nghĩ rằng đây là để làm với một định dạng tập tin văn bản unix/windows. – bcmcfc

+1

Tôi vừa mới chú ý - và tôi phải chậm hoặc gì đó, bởi vì tôi nghĩ rằng hành vi này được mong đợi - nhưng yêu cầu ajax luôn trả về lỗi trong Firefox như những gì @Ivo nói, khiến địa chỉ 'select' thành được dân cư không có gì. –

Trả lời

2

Tôi đã tìm thấy sự cố - trình duyệt không thích có javascript:void() được đặt cho thuộc tính href. Nếu bạn muốn có một neo đang hoạt động có hành động mặc định bị hủy, sau đó sử dụng # cho thuộc tính href, sau đó có trình xử lý sự kiện cho neo đó return false để hủy tác vụ mặc định của trình duyệt.


Erm ... right ... xin lỗi vì sự háo hức của tôi để đăng câu trả lời và không kiểm tra kỹ xem vấn đề đã được giải quyết đúng chưa.

Tôi thấy khó tìm ra sự cố. Tôi sẽ chỉ gây nguy hiểm cho một phỏng đoán ở đây: hai hiệu ứng đang chạy và kết thúc cùng lúc gây nhầm lẫn cho IE8, khiến cho div được đặt ở độ cao 1px. Điều này tất nhiên giả định một lỗi trong việc thực hiện jQuery của hàng đợi có hiệu lực, mà tôi chắc chắn không thể xác minh cho. Nó chỉ là lý thuyết của tôi vào lúc này - sự không quen thuộc của tôi với thanh công cụ phát triển IE ngăn cản tôi điều tra thêm.

+0

Cảm ơn câu trả lời của bạn. Tôi đã chuyển void() s cho #s và vấn đề vẫn tồn tại. – bcmcfc

1

Đó là sự cố với Bạn đang chạy hoạt ảnh mà tôi cho là. Hành động không đồng bộ của bạn sẽ kích hoạt một số hoạt ảnh trượt.

Đầu tiên: Thử đăng nhập kết thúc tất cả hoạt ảnh (đặt hàm gọi lại trong cuộc gọi slide* và đăng nhập một số văn bản vào bảng điều khiển.) Để xem chúng có đúng thứ tự không - tôi cho là không và đó là vấn đề.

Thứ hai: Thử thêm .stop() trước mọi hoạt ảnh được kích hoạt không đồng bộ để nó phá vỡ các hoạt ảnh khác hoạt động cùng một lúc.

Thứ ba: Nếu ở trên không giúp thử điều này cho tất cả các hình ảnh động:

if($(this).data('running')==0){ 
$(this).data('running',1).slideUp(function(){$(this).data('running',0)}); 
}else{ /*call with timeout or ignore...*/ } 

Đó là một semaphore cơ bản trên một phần tử.

HOẶC

Bạn có thể sử dụng hàng đợi .animate và hình ảnh động trong jQuery đúng cách, nhưng nó muốn được một chút của một overkill cho trường hợp này (tôi nghĩ).

0

Phản ứng đầu tiên của tôi có thể là vấn đề về CSS. Nếu tôi tìm thấy giá trị mặc định và nhấp vào liên kết 'Tìm Địa chỉ' một lần, tôi sẽ thấy một vấn đề bố cục tương tự (mặc dù không giống hệt). Chiều cao trên mỗi phần sẽ bị thu gọn, như thể các phần nổi không chọn đúng chiều cao nội dung.Nếu tôi từng bước xác định chiều cao trên mỗi contentRow hoặc chuyển đổi hiển thị từ khối-none-block trên pcodeLookupAddressEdit_risk_address, định dạng được sửa chữa.

Tôi không biết nguyên nhân cụ thể, nhưng, bạn có thể muốn kiểm tra CSS và hành vi hiển thị/ẩn trên trang trình bày.

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