2010-11-04 4 views
5
$.fn.resizer = function(o){ 

    var s = {} 
    $.extend(s,o); 

    return this.each(function(){ 

     $(this).css({ 
      'width':s.width+20, 
      'height':s.height+20 
     }) 
      .parent().css({ 
       'width':s.width, 
       'height':s.height 
      }); 

    }); 

} 

Я хочу сделать это с iframe, изнутри iframe.jQuery: Доступ к iframe dom из самого iframe

Когда я пытаюсь вызвать его оттуда через:

$(top).uploader_finish({ 
    width:original_width+<?php echo $this->sizes['width'] ?>+20, 
    height:original_height+<?php echo $this->sizes['height'] ?>+80 
}); 

окно родителей Получение, но как получить доступ к IFRAME напрямую?

Спасибо;)

Update

Единственное решение я нашел, это называть так:

$ (top.document) .find ('IFrame [имя = default_1 ] ');

И имя по умолчанию_1, как параметр $ _GET внутри src iframe.

Или есть способ получить имя iframe изнутри?

Update

AHA! Нашли это :)

window.name 

Так в основном это будет выглядеть так?

$(top.document).find('iframe[name='+window.name+']'); 
+0

дайте мне знать, если это сработало! – hunter

+0

Кто-то, вы должны поместить свое обновление в качестве ответа, таким образом мы могли бы сделать +1 для вас. Хотя, я добавил цитаты вокруг имени. Таким образом, он может работать в большем количестве случаев. –

+0

'$ (top.document)' работает для меня, THX! – Paul

ответ

1

вы можете получить кадр, это ID

document.getElementById('frameId') 

или в window.frames коллекции

$(document).find("iframe").attr("name"); 
+0

Nvm, как получить имя iframe изнутри? Это все, что мне нужно. :) – Somebody

+0

обновил мой ответ – hunter