怎么通过js或jquery获取iframe里面video 标签,这么做是不是可行?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么通过js或jquery获取iframe里面video 标签,这么做是不是可行?相关的知识,希望对你有一定的参考价值。

参考技术A jQuery Mobile提供了一个叫autoInitializePage的属性,这个属性表示页面是否应该初始化,其默认值为true。
然而,如果是继承扩展 了$.mobile对象,开发者则可以将该值设置为false,并且在稍晚的时候对页面初始化进行设置。

jquery 改变iframe内容

有两个页面分别是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代码放在按钮里面完全没问题。

这是浏览器同源策略(本地调试时,涉及跨域)的问题。
例如,在Chrome控制台出现错误:

Uncaught DOMException: Failed to read the 'contentDocument' property from 'HTMLIFrameElement': Blocked a frame with origin "null" from accessing a cross-origin frame

解决办法:
上传到服务器,问题就不会出现了。
参考技术A 因为js在body前先加载了;
当body元素加载出来,js就执行了,而iframe却加载没js执行快,才出现“你好”,但是瞬间又变成空白页面。

可以把scrpit放到body后面加载。

以上是关于怎么通过js或jquery获取iframe里面video 标签,这么做是不是可行?的主要内容,如果未能解决你的问题,请参考以下文章

jQuery(javascript)无法跨域,怎么解决?是想获取iframe的框架里面的东西!!

怎么获取 iframe转跳的网址

js 怎么获取iframe 的高度?

怎么获取iframe里面的元素

Jquery 获取iframe 中元素并设置CSS问题

jquery 获取iframe里面的元素