将 iframe 的 src=“” 更改为 javascript:
Change src="" of iframe to javascript:
>我正在尝试将 iframe 的源代码更改为 javascript:...我尝试过这个没有任何运气;
<iframe id="iframed" src="http://example.com"></iframe>
$('#iframed').attr('src','javascript:document.write("hello world")');
我收到"类型错误:文档.write 不是一个函数"错误。正确的方法是什么?
如果您只想将内容写入框架,则可以直接访问其文档对象:
document.getElementById("iframed").contentDocument.write("Hello World!");
但是,如果框架已经从外部域加载,则这将不起作用。
据我所知,没有标准来定义当您使用javascript:
方案将iframe
上的src
属性设置为URI时应该发生的情况。有一个IETF笔记草案,它建议已经存在哪些功能(比如它在锚元素中的使用),但没有说用户代理必须做任何事情。您可以将其输入到浏览器的地址栏中的事实是由于浏览器的实现。例如,我猜在像lynx这样的命令行浏览器中输入该URL会让你一事无成。
如果你想使用 JavaScript 在帧之间进行通信,那将是一个不同的问题。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title></title>
</head>
<body>
<iframe id="iframed"></iframe>
<script>
var test = "Hello World!";
document.getElementById("iframed").src = "data:text/html;charset=utf-8," + test;
</script>
</body>
</html>
试试这个,它可以在铬...另请查看此链接
由于您尝试将内容附加内容放入 iframe 中,因此您首先需要知道,如果您无法控制框架内的站点(在您的示例中"http://exemple.com"),则可能是不可能的。
否则很容易注入脚本,这会导致各种安全问题。
如果您控制了 iframe 中的站点,则可以使其能够理解来自站点(包括 iframe)的消息。如果要这样做,可能需要查看"如何在 iframe 和父站点之间进行通信?
相关文章:
- 获取文本javascript+iframe
- 使用“GET”的客户端请求表单,即使定义了“POST”.javascript iframe是原因吗
- 在嵌入式站点上使用javascript?(iframe,对象)
- JavaScript iframe内容加载问题
- javascript iframe content javascript
- JavaScript iframe在每次加载时都会调整大小
- Javascript Iframe weekday
- 没有src的Javascript iframe,带有嵌套脚本
- javascript iframe unload
- javascript iframe: accessing http from https
- contentDocument 和 contentWindow javascript iframe/frame 访问属性
- Javascript iframe src仅在开始时变为Null
- 如何在asp.net中关闭(javascript iframe)
- 将默认图像放入Javascript IFRAME中
- MS Crm 2011 javascript Iframe functions
- javascript iframe permission
- 我在哪里可以找到一个全面的Javascript iframe编程参考
- Javascript iframe加载时间函数的许多url
- 在加载javascript iframe时加载消息
- Javascript-iframe communication