jquery - 使用 jquery 更改 iframe 源

标签 jquery

我现在已经尝试了一段时间,并且查看了 SO 上类似问题的其他答案,但是当我尝试更改 iframe 的 src 属性时,它会为整个窗口更新它。以下是我正在使用的正确运行的代码(无 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>

正如我所说,我已经尝试过

$('#ifrm').attr('src', "http://www.google.com")

显示页面,但不在 iframe 中。我真的只是在学习jquery,但我不知道我的情况与其他类似的问题有什么不同,如下所示:

Jquery and iFrame update

谢谢。

最佳答案

应该可以。

这是一个工作示例:

http://jsfiddle.net/rhpNc/

摘录:

function loadIframe(iframeName, url) {
    var $iframe = $('#' + iframeName);
    if ($iframe.length) {
        $iframe.attr('src',url);
        return false;
    }
    return true;
}

关于jquery - 使用 jquery 更改 iframe 源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2930315/

相关文章:

php - Jquery、Ajax保存到数据库

javascript - jQuery 滑动表头的问题

javascript - 为什么当模糊应用到 div 时点击不起作用

javascript - $.each() jQuery 新闻源

javascript - Jquery 条形码扫描仪集成

jquery - 使用 jQuery append 列表与站点的其余部分冲突

javascript - onchange html 值返回后 select2 不起作用

jquery - 如何检查 Bootstrap 模式是否打开,以便我可以使用 jquery 验证?

javascript - JQUERY,动态文本框 ID 分配给 focusout 函数

javascript - jQuery UI 自动完成 : Only allow selected valued from suggested list