tôi sẽ phải xem mã thực tế nhưng phải đối mặt với một vấn đề tương tự tôi phải thoát khỏi jQuery.load(). Thay vào đó, tôi đã sử dụng jQuery.get() với loại dữ liệu "html" và đã viết lời gọi lại của riêng mình, nơi tôi đã tiêm dữ liệu qua .innerHTML. Làm như vậy, tôi cũng nhấn một lỗi khác (đó là một thẻ < chọn > và IE sẽ không cho phép .innerHTML trên đó) vì vậy tôi đã viết một cách giải quyết xấu.
mã kết quả là một cái gì đó như thế này:
// Fetch data (GET method allows me to use browser cache)
$.get(url, get, function(htmlValues, txtStatus){
that.populateSelects(htmlValues, that.selectContainers);
}, "html");
// Create <select>
var select = $('<span><select disabled="disabled"></select></span>');
$("<option>").attr("value", "").text("Loading...").appendTo(select.find("select"));
// Populate <select>
that.populateSelects = function(values, selectContainers){
var span, select, tags;
for(var i=0, len=selectContainers.length; i<len; i++){
span = selectContainers[i];
if($.browser.msie){
tags = span.innerHTML.match(/^(<select[^>]+>).*(<\/select>)$/i);
span.innerHTML = tags[1] + values + tags[2];
select = span.firstChild;
}else{
select = span.firstChild;
select.innerHTML = values;
}
$(select).removeAttr("disabled");
}
}
Nguồn
2009-06-02 12:08:36
bao nhiêu nội dung được bạn tải? IE thường chậm hơn một chút đối với một số thứ và chậm hơn rất nhiều nếu có nhiều nội dung. – cgp
11KB. Có quá nhiều cho IE7 không? FF Opera Chrome tải rất nhanh. – taras