4

私は単純な iFrame を持っています … </p>

<iframe src="url" width="980px" height="90px" id="inviteFrame" name="inviteFrame" scrolling="no"></iframe>

フレーム内の要素のクリック イベントをキャッチできないことはわかっていますが、iFrame 自体の単純なクリックまたはマウスダウンはどうですか?

$('#inviteFrame').click(function() {
    console.log('test');
    $(this).attr('height', '140px');
});

これは私にはうまくいきません!

4

2 に答える 2

7

jQuery には.contents()と呼ばれるメソッドがあり、要素で使用するiframeと iframe のドキュメントを返します。

// Get a reference to the iframe document
var iframeDoc = $('#inviteFrame').contents().get(0);

これで、イベントをそれにバインドしたり、寸法を取得したり、さまざまな要素のスタイルを取得したりできます:

// Get width of iframe document
$(iframeDoc).width();

// Get height of iframe document
$(iframeDoc).height();

// Bind event to iframe document
$(iframeDoc).bind('click', function( event ) {
    // do something
});

// Get the style of an element in the iframe
$('div', iframeDoc).css('backgroundColor');
于 2012-05-13T13:50:57.283 に答える