2011-07-12 18 views
0

ボタンをクリックしてリストを展開するiframeがあります。ボタンをクリックするとそのiframeの高さを調整します。iframeの高さが調整されない

function adjustIFrameHeight(){ 
$('.childframe').css('height', function(index) { 
    return index +=400;}); 
}; 

は私がコールせずにそれを試してみましたので、親フレームのコードが動作することを知っている:

 <script> 
$(function() { 
    $("#field12593102_1").click(function() { 
     window.parent.adjustIFrameHeight(); 
    }); 
}); 
</script> 

親フレームのコードは以下の通りです:ここで私はiframe内に持っているコードがあります関数に渡すが、今のようには機能しません。

答えて

2
あなたは(CSSによって呼び出される関数の第二引数を使用する必要が

function adjustIFrameHeight(){ 
$('.childframe').css('height', function(index,value) { 
    return value + 400;}); 
}; 

第一引数には、jQueryのオブジェクト内の現在の要素のインデックスではなく、この内の現在のプロパティ(幅、場合)。

あなたはまた、使用することができます:

function adjustIFrameHeight(){ 
    $('.childframe').css('height', '+=400'); 
    }; 
+0

これは動作しないことができる、それはによって制限されますsame-origin-policy –

+0

@ zach:それはクロスドメインiframeです。同一原点ポリシーのため、ドメイン間でスクリプトを作成することはできません。 – bobince

+0

ありがとうございます。助けてくれてありがとう! – zach

1

変更:

function adjustIFrameHeight(){ 
$('.childframe').css('height', function(index) { 
    return index +=400;}); 
}; 

へ:IFRAMEと親文書が異なるドメインに置かれたときに

function adjustIFrameHeight(){ 
    $('.childframe').css({height: function(index, value) { 
     return value +=400;} 
    }); 
}; 
関連する問題