如何更改 iframe src
How to change iframe src
如果我问一些非常基本的问题,请耐心等待,因为我对编码了解不多。我有一个股票图表应用程序,它有一个内置的网络浏览器。我配置了这个浏览器来加载一个html页面,我编码如下,就像这个mypage.html?symbol=xzy,我在这里要做的是捕获提交的html变量'symbol',并将其值用作url字符串的一部分来加载另一个第三方网页的一部分。我无法弄清楚我的 javascript 代码出了什么问题,它无法设置"src"属性的值。任何帮助都非常感谢。
<html>
<header>
<script>
document.getElementById('iframe').src = "http://www.asx.com.au/asx/markets/dividends.do?by=asxCodes&asxCodes="+symbol+"&view=all#dividends";
</script>
</header>
<body>
<div id="dividends"></div>
<iframe id="iframe" src="" style="display:hidden;margin-left: -140px; margin-top: -33px" scrolling="no" frameborder="no" width="398" height="265"></iframe>
</body>
</html>
尝试将script
移动到html之后DOM
<body>
<div id="dividends"></div>
<iframe id="iframe" src="" style="display:hidden;margin-left: -140px; margin-top: -33px" scrolling="no" frameborder="no" width="398" height="265"></iframe>
</body>
<script>
document.getElementById('iframe').src = "http://www.asx.com.au/asx/markets/dividends.do?by=asxCodes&asxCodes="+symbol+"&view=all#dividends";
</script>
有几件事:1)从执行函数onLoad 开始 - 这样你就知道脚本将在浏览器渲染它之后运行并填充src属性,而不是之前。
2) 使用函数获取 URL 值。
<html>
<header>
<script>
<!-- source: http://javascriptproductivity.blogspot.com/2013/02/get-url-variables-with-javascript.html -->
function GetUrlValue(VarSearch){
var SearchString = window.location.search.substring(1);
var VariableArray = SearchString.split('&');
for(var i = 0; i < VariableArray.length; i++){
var KeyValuePair = VariableArray[i].split('=');
if(KeyValuePair[0] == VarSearch){
return KeyValuePair[1];
}
}
}
function SetContent(){
var symbol = GetUrlValue('symbol');
document.getElementById('iframe').src = "http://www.asx.com.au/asx/markets/dividends.do?by=asxCodes&asxCodes="+symbol+"&view=all#dividends";
}
</script>
</header>
<body onLoad="SetContent();">
<div id="dividends"></div>
<iframe id="iframe" src="" style="display:hidden;margin-left: -140px; margin-top: -33px" scrolling="no" frameborder="no" width="398" height="265"></iframe>
</body>
</html>
将 javascript 移到页面底部的 iframe 之后。您正在尝试在创建元素之前对其进行更改。最初也做src="about:blank",所以它会验证。
相关文章:
- 在Twitter上用ie9中的空白src访问iframe的contentWindow
- 如何使用Angular动态添加iframe-src
- 在不设置协议的情况下,使用javascript/jquery更改iframe-src
- 如何在使用JavaScript或jQuery刷新父页面后保留iframe-src
- Change iframe src
- 使用jQuery来foreach iframe-src,并通过函数获取ID和操作
- jQuery在iFrame Src中查找和替换文本
- 使用jQuery编辑iframe-src
- 如果iframe在src(pdf或text)中有非html文档,则iframe中的onload不起作用
- 如何更改具有相同类、名称的 iframe src
- 用vbscript更改iframe src(打开关于语言)
- 单击没有 src 属性的 iframe 中的元素
- 调整 iframe 的大小,以便在每次更改 src 时包装其内容
- iframe src 使用现有值在单击时添加自动播放=true 参数
- 为什么当我尝试为iframe-src属性构建URL时,AngularJS会抛出错误
- 如何使用java脚本将iframe的src设置为当前访问的站点
- src为null的iframe中的Javascript文件的路径
- 如何获得"src”;来自多个嵌套iframe源的属性
- 常量脚本 -> 更改 src iframe (1 分钟, 5分钟) + jQuery
- 加载src-iframe的文档后调整其大小