Tôi đang tạo một trang web sử dụng Cufon và đặc biệt nặng về mặt trang trọng lượng do một lượng lớn Javascript. Vì vậy, tôi đang cố gắng để tải trong kịch bản không đồng bộ với head.js (http://headjs.com/) như sau:Cufon được tải không đồng bộ không hiển thị trong IE
head.js("http://ajax.microsoft.com/ajax/jquery/jquery-1.4.2.min.js", function() {
head.js("/js/libs/cufon-yui.js", function() {
head.js("/js/shared/Stag_Bold_700.font.js" , function() {
Cufon.replace('h1', { fontFamily: 'Stag Bold' });
});
});
});
Vì vậy, Jquery sẽ được tải về đầu tiên, tiếp theo cufon lib file và cufon phông chữ được tải xuống theo thứ tự và sau đó cufon là cuối cùng được gọi để thay thế H1. Rõ ràng, đây là một ví dụ được cắt bớt với ít thay thế nhưng điều này vẫn không hoạt động khi chỉ cố gắng thay thế H1.
Vấn đề là CHỈ trong Internet Explorer (6/7/8), văn bản không được thay thế nhưng tôi có thể thấy rằng Cufon chắc chắn đã được gọi. Tôi có thể xác định điều này bởi vì thẻ có lớp "cufon-active cufon-ready" được thêm vào nó. Khi tôi kiểm tra đánh dấu bằng cách sử dụng thanh công cụ của IE Developer, các thẻ cufon/cufoncanvas có bên trong các phần tử được chọn nhưng, vì muốn có một từ tốt hơn, vô hình.
Trong IE9, tập lệnh hoạt động như dự định tương tự như Chrome và Firefox. Tôi đã thử điều chỉnh công cụ vẽ Cufon và đã cập nhật lên phiên bản 1.09i mới nhất để có biện pháp tốt. Nếu tôi di chuyển câu lệnh Cufon gọi đến sự kiện sẵn sàng tài liệu thay vì tải không đồng bộ, nó hoạt động nhưng tôi đang cố gắng tối ưu hóa tải trang và trang web của tôi sẽ sử dụng một số phông chữ Cufon cũng như nhiều trình cắm thêm JS khác. Tôi cũng đã thử sử dụng cả labs.js và head.js để tải các tệp thích hợp một cách không đồng bộ.
Điều đó thật đáng tiếc, bạn nên gửi lỗi. – Marko
Khắc phục được [sáp nhập] (https://github.com/sorccu/cufon/commit/79ea413a3aadc30d8cffb05faade6e003d9e7e5a) vào kho lưu trữ chính. –