删除iframe中的元素

时间:2014-02-01 19:42:43

标签: jquery salesforce visualforce

我有一个VF页面,它在iframe中嵌入了一个仪表板。我不确定这是否可行,但我试图使用JQuery隐藏仪表板页面中的一些元素。所以,我正在尝试这个:

<apex:includeScript value="{!URLFOR($Resource.JQuery, '/js/jquery-1.11.0.min.js')}" /> 
<script type="text/javascript"> 
    var j$ = jQuery.noConflict();

    j$(document).ready(function() {
        var f=j$("#iFrame");
        f.load(function() {
            f.contents().find(".viewHeaderValue").hide();
        });
    });        
</script>

最初,我不认为这会是一个跨域脚本问题,因为仪表板和VF在同一个salesfore环境中,但是现在,我想知道跨域脚本是否是问题。

我的带有iframe的VF页面的域名为:https://c.na11.visual.force.com/apex/myVFpage

与我嵌入到VF页面的同一组织中的仪表板的域具有以下域:https://na11.salesforce.com/

这是跨域脚本问题吗?

感谢。

1 个答案:

答案 0 :(得分:1)

您发布的代码很好,也就是说它不包含明显的错误或拼写错误,并且当两个iframe位于同一个域时,它会按预期工作。

因此,我得出结论:a)它是一个跨域脚本问题,或者b)另一个因素在起作用。

当您违反相同的原始政策时Chrome总是会抱怨,所以为什么不在Chrome中打开您的网页并查看您的控制台所说的内容。