Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么我能';是否在同一域上使用通用方法访问iframe? $(“#frameDemo”).contents().find(“a”).css(“背景色”,“#BADA55”);_Javascript_Jquery - Fatal编程技术网

Javascript 为什么我能';是否在同一域上使用通用方法访问iframe? $(“#frameDemo”).contents().find(“a”).css(“背景色”,“#BADA55”);

Javascript 为什么我能';是否在同一域上使用通用方法访问iframe? $(“#frameDemo”).contents().find(“a”).css(“背景色”,“#BADA55”);,javascript,jquery,Javascript,Jquery,来自JQ文档 问题可能是我在本地主机上做的 <script> $( "#frameDemo" ).contents().find( "a" ).css( "background-color", "#BADA55" ); </script> $(文档).ready(函数(){ $(“#样本测试”).contents().find('a').css('color','red')) }) 由于某些原因,它对我不起作用。您必须向iframe添加一个onload事件才能做到这

来自JQ文档

问题可能是我在本地主机上做的

<script>
$( "#frameDemo" ).contents().find( "a" ).css( "background-color", "#BADA55" );
</script>

$(文档).ready(函数(){
$(“#样本测试”).contents().find('a').css('color','red'))
})

由于某些原因,它对我不起作用。

您必须向iframe添加一个
onload
事件才能做到这一点。调用
document.ready
时,iframe可能尚未完全加载


但只有当iframe中的源来自同一个域时,这才有效

父级的域是什么window@putvande,主页和iframe都位于localhost上。当您尝试更改颜色时,也可能是iframe尚未准备就绪。尝试用setTimeout包装它,看看会发生什么,或者在iframe中添加一个“onload”。@putvande,你说得对)谢谢
  <script>
    $(document).ready(function(){

      $('#sample_test').contents().find('a').css('color', 'red')
    })

</script>
<iframe src="http://localhost:3000/tests/384"  width="100%" seamless="seamless"  height="1150px" scrolling="no" id="sample_test"></iframe>