繁体   English   中英

单击某个元素时重新加载iframe src

[英]Reload iframe src when clicked on an a element

用户单击时,是否可以使用元素href属性替换iframe src?

我有这个代码

http://jsfiddle.net/6Hv9P/1/

并且我正在尝试让用户使用duckduckgo进行搜索,当点击结果时,应将iframe src替换为href值。

确实可能。 这是此类链接的示例:

<a href="http://jsfiddle.net" onclick="document.getElementById('siframe').src=this.href; return false;">click me</a>

单击链接后,它将替换iframe源。

更新小提琴

为了更加灵活,您可以使用以下代码,尽管这样会使所有锚点以相同的方式运行:

window.onload = function() {
    var oFrame = document.getElementById('siframe');
    var anchors = document.getElementsByTagName("a");
    for (var i = 0; i < anchors.length; i++) {
        var anchor = anchors[i];
        var curHref = anchor.href;
        if (curHref && curHref.length > 0) {
            anchor.onclick = function() {
                oFrame.src = curHref;
                return false;
            }
        }
    }
};

如果我对您的理解正确,那么我认为您要尝试的是检测iframe页面的更改时间,然后从该iframesrc属性获取新页面的URL。

不幸的是,我认为您不走运,因为在页面更改时浏览器不会更新src属性。 并且,除非iframe的页面与父页面来自同一域,否则浏览器安全性将阻止您从新页面中发现document.location.href

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM