jquery 改变iframe内容
有两个页面分别是a.html,b.html.a里面包含一个iframe,iframe加载b,我通过jquery获取b的内容进行修改。a主要代码如下,<script>$(f...
有两个页面分别是a.html,b.html.
a里面包含一个iframe,iframe加载b,我通过jquery获取b的内容进行修改。
a主要代码如下,
<script>
$(function(){
$("iframe").contents().find("body").html("你好!");
});
</script>
</head>
<body>
<iframe src="b.html"></iframe>
</body>
b是一个空白页面,现在刷新a的瞬间b中会出现“你好”,但是瞬间又变成空白页面,这是什么原因?
我试了一下,把jquery代码放在body后面也是不行的,但是页面上放一个按钮,把jquery代码放在按钮里面完全没问题。 展开
a里面包含一个iframe,iframe加载b,我通过jquery获取b的内容进行修改。
a主要代码如下,
<script>
$(function(){
$("iframe").contents().find("body").html("你好!");
});
</script>
</head>
<body>
<iframe src="b.html"></iframe>
</body>
b是一个空白页面,现在刷新a的瞬间b中会出现“你好”,但是瞬间又变成空白页面,这是什么原因?
我试了一下,把jquery代码放在body后面也是不行的,但是页面上放一个按钮,把jquery代码放在按钮里面完全没问题。 展开
2个回答
展开全部
这是浏览器同源策略(本地调试时,涉及跨域)的问题。
例如,在Chrome控制台出现错误:
Uncaught DOMException: Failed to read the 'contentDocument' property from 'HTMLIFrameElement': Blocked a frame with origin "null" from accessing a cross-origin frame
解决办法:
上传到服务器,问题就不会出现了。
例如,在Chrome控制台出现错误:
Uncaught DOMException: Failed to read the 'contentDocument' property from 'HTMLIFrameElement': Blocked a frame with origin "null" from accessing a cross-origin frame
解决办法:
上传到服务器,问题就不会出现了。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询