Jquery - 在Iframe中向元素添加函数?

时间:2009-10-02 11:51:11

标签: javascript jquery function iframe element

我尝试了很多方法,但不是很有效。例如,一个有效:

         $('#iframeid').ready( 
        function()
        {
        alert('Hello');
        }
    );

但是跟随没有(警告你好,但不要集中注意力。)

     $('a:link').click(
     function()
     {
        alert('Hello'); 
        var iframeRef = document.getElementById("iframeid");
        $(iframeRef).focus();
    $(iframeRef).contents().find("#smthing").focus(); 
     }); 

请帮我解决。

3 个答案:

答案 0 :(得分:0)

您要做的是访问其他文档。大多数(如果不是全部)浏览器阻止了这一点,因为这是一个安全问题。让脚本加载并读取其他网站的内容是......好吧......邪恶。

答案 1 :(得分:0)

出于安全考虑,您无法使用Javascript访问iframe中的其他域。在某些浏览器中,甚至可能存在来自同一域的iframe的问题。

如果可能的话,我会尽可能避免使用iframe。如果您有HTML内容,则可以使用divoverflow:auto内联添加内容,以达到相同的效果。

作为旁注,为什么要使用document.getElementById("iframeid")?您必须知道可以在jQuery中执行$('#iframeid'),因为您在下一行中执行此操作。

答案 2 :(得分:0)

Same origin政策限制从javascript访问加载到iframes属性中的另一个域。