Tôi có một khung nội tuyến trong trang web của mình. Tôi sửa đổi thuộc tính src thông qua javascript như vậy:Sửa đổi iframe.src mà không cần nhập vào đối tượng lịch sử
document.getElementById('myiframe').src = 'http://vimeo.com/videoid1';
document.getElementById('myiframe').src = 'http://vimeo.com/videoid2';
document.getElementById('myiframe').src = 'http://vimeo.com/videoid3';
Tuy nhiên, mỗi lần tôi làm điều này, nó được đăng nhập vào lịch sử của trình duyệt. Vì vậy, mỗi khi tôi nhấn lại trong cửa sổ trình duyệt, nội dung khung nội tuyến chuyển từ videoid3 sang videoid2 sang videoid1. Nếu tôi bấm lại, toàn bộ trang sẽ quay trở lại.
Tôi muốn sửa đổi iframe src bằng javascript KHÔNG đăng nhập một mục nhập vào lịch sử của trình duyệt. Vì vậy, nếu tôi nhấp vào nút quay lại trình duyệt, toàn bộ trang sẽ quay trở lại mà không cập nhật iframe.
tôi đã cố gắng làm điều gì đó như:
document.getElementById('myiframe').contentWindow.location.replace('http://vimeo.com/videoid1');
document.getElementById('myiframe').contentWindow.location.replace('http://vimeo.com/videoid2');
document.getElementById('myiframe').contentWindow.location.replace('http://vimeo.com/videoid3');
Mặc dù điều này làm cho trình duyệt trở lại nút hành xử theo cách tôi muốn, nó đã phá vỡ những điều nào đó trong đoạn video Vimeo. Vimeo YÊU CẦU bạn thay đổi url thông qua iframe.src thay vì contentWindow.location.replace().
Như vậy, làm cách nào để sửa đổi iframe.src KHÔNG đăng nhập vào lịch sử?
liên quan Đây thực sự là một trong những giải pháp tôi đang khám phá để giải quyết vấn đề chính, mà tôi được đăng ở đây History object back button with iframes
Bản sao có thể có của http://stackoverflow.com/questions/821359/reload-an-iframe-without-adding-to-the-history Tôi nghĩ câu trả lời này sẽ giải quyết vấn đề của bạn http://stackoverflow.com/a/8681618/2009041 –