Tôi đã thử điều này một chút và đã xem xét các câu trả lời khác cho các câu hỏi tương tự trên SO, nhưng khi tôi cố gắng thay đổi thuộc tính src của khung nội tuyến, nó sẽ cập nhật toàn bộ cửa sổ. Dưới đây là đoạn mã sau Tôi đang sử dụng mà các công trình một cách chính xác (không jquery):thay đổi nguồn khung nội tuyến bằng jquery
<html>
<head>
<style type="text/css">
iframe#ifrm {
border:none;
padding:.5em;
margin:1.5em 0 1em;
width:100%;
height:100%;
}
</style>
<script src="./js/jquery-1.4.2.js" type="text/javascript"></script>
<script type="text/javascript">
// <![CDATA[
// !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
// this is the function I'm trying to replace:
function loadIframe(iframeName, url) {
if (window.frames[iframeName]) {
window.frames[iframeName].location = url;
return false;
}
return true;
}
// ]]>
</script>
</head>
<body>
<ul>
<li><a href="http://www.google.com/" onclick="return loadIframe('ifrm', this.href)">Page 1</a> </li>
<li><a href="tabs.html" onclick="return loadIframe('ifrm', this.href)">Page 2</a></li>
</ul>
<div class="iframe">
<iframe name="ifrm" id="ifrm" src="tabs.html" frameborder="0">
Your browser doesn't support iframes.</iframe>
Như tôi đã nói, tôi đã cố gắng
$('#ifrm').attr('src', "http://www.google.com")
hiển thị trang, nhưng không có trong khung nội tuyến. Tôi thực sự chỉ là học jquery, nhưng tôi không thể tìm ra những gì khác biệt về hoàn cảnh của tôi hơn những câu hỏi tương tự khác như thế này:
Cảm ơn.
Bạn đề cập rằng nó sẽ hiển thị trang nhưng không phải trong iframe, bạn có chắc đó là một vấn đề jQuery và không phải là một vấn đề CSS? Có thể bạn có thể bật đường viền để xem liệu khung có đang thay đổi thứ nguyên khi tải một trang mới hay không. – Mayo