2010-11-04 19 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 
      }); 

    }); 

} 

Quiero hacer esto con iframe, desde dentro de iframe.jQuery: Accediendo al iframe dom desde el mismo iframe

cuando estoy tratando de llamarlo desde allí a través de:

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

ventana de matriz conseguir, pero la forma de acceder directamente iframe?

Gracias;)

actualización

La única solución que he encontrado, es de llamar así:

$ (top.document) .find ('iframe [name = default_1 ] ');

Y el nombre predeterminado_1 envía como $ _GET parámetro dentro de src of iframe.

¿O hay alguna forma de obtener el nombre del iframe, desde adentro?

actualización

AHA! Lo encontré :)

window.name 

Así que, básicamente, se verá así?

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

quiero saber si esto funcionó! – hunter

+0

Alguien, debería poner su Actualización como respuesta, de esa manera podríamos hacer +1 por usted. Aunque, agregué comillas alrededor del nombre. De esa manera puede funcionar en más casos. –

+0

'$ (top.document)' funciona para mí, ¡gracias! – Paul

Respuesta

1

se puede obtener el cuadro por su ID

document.getElementById('frameId') 

o en la colección window.frames

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

Nvm, ¿cómo obtener un nombre de iframe desde adentro? Eso es todo lo que necesito. :) – Somebody

+0

actualizó mi respuesta – hunter