Tôi có mã sau đây và hoạt động của nó (như thường lệ) trong mọi thứ trừ IE. Nó cho tôi một cuộc gọi bất ngờ đến phương thức hoặc truy cập thuộc tính trong Jquery và tôi không biết làm thế nào để gỡ lỗi nó. Tôi đã sử dụng thanh công cụ dành cho nhà phát triển IE, điều này vô dụng đối với lỗi này và chỉ cung cấp cho tôi một dòng 12 (bên trong tập lệnh jquery).Lỗi IE Javascript: cuộc gọi bất ngờ đến phương thức hoặc quyền truy cập thuộc tính
Any help is v nhiều đánh giá cao:
<script type="text/javascript">
$(document).ready(function() {
$.history.init(pageload);
$('a[href=' + window.location.hash + ']').addClass('selected');
$('a[rel=ajax]').click(function() {
var hash = this.href;
hash = hash.replace(/^.*#/, '');
$.history.load(hash);
$('a[rel=ajax]').removeClass('selected');
$(this).addClass('selected');
$('.loading').show();
getPage();
return false;
});
});
function pageload(hash) {
if (hash) getPage();
}
function getPage() {
hash = document.location.hash;
hash = hash.replace(/^.*#/, '');
var data = 'page=' + encodeURIComponent(hash);
$.ajax({
url: "index.php",
type: "POST",
data: data,
cache: false,
success: function (html) {
$('.loading').hide();
$('tbody').html(html);
}
});
}
</script>
Đây là plugin lịch sử: http://plugins.jquery.com/project/history
Và đây là bản demo tôi đã được như sau: http://plugins.jquery.com/project/history
Tuy nhiên thay đổi window.location quay lại document.location dường như không tạo ra sự khác biệt
Im lost o n cái này Khi tôi thay đổi thẻ im gọi cho nó không đăng để làm việc của nó, nhưng trong nghĩa là thiết kế là tất cả bị hỏng và các liên kết tiếp theo tôi bấm vào không đăng bài. Thực sự tuyệt vời !!, hoạt động tốt trong FF, opera v.v.
ive thu hẹp nó xuống thẻ tbody. Bất kỳ ý tưởng tại sao điều này gây ra sự cố? IE có nhận ra thẻ này không? PS Thx bạn đã đúng về những điều bạn đã đề cập cũng như –
@Ke: IE nhận ra thẻ 'tbody', vâng. Tôi vừa mới nhận ra rằng bạn đang làm '$ ('tbody'). Html (html)' - làm * thực sự * muốn viết nội dung này vào mọi 'tbody' trên trang? Và HTML bạn đang viết cho nó là gì? Có lẽ là một loạt các phần tử 'tr' ... IE không giống như bạn mucking về với các hàng trong bảng thông qua' innerHTML', nhưng tôi cho rằng jQuery đang xử lý cho bạn (Prototype làm và tôi không nghĩ jQuery là lạc hậu hơn trong khu vực đó, nhưng tôi không biết jQuery tốt). –