4

HTML は非常に単純で、私のページでは

<div id="notificationDialog" title="View Notification"></div>

ページを表示しているユーザーに基づいて通知を動的に読み込み、jQuery UI ダイアログ内にある iframe 内に表示します。基本的、

function viewNotif(nid) {
  var wWidth       = jQuery(window).width();
  var dWidth       = wWidth * 0.5;
  var $notifIframe = jQuery('<iframe />', {
      name: 'myFrame',
      id:   'myFrame',
      src: "/modals/modal_notification.php?nid="+nid,
      width:"100%",
      height:"100%",
      align:"center",
      scrolling:"auto",
      frameborder:"0"
  }); 

  jQuery('#notificationDialog').html($notifIframe.clone());

  jQuery('#notificationDialog').dialog({
      autoOpen: false,
      height: auto,
      width: dWidth,
      modal: true
  });

  jQuery('#notificationDialog').dialog('open');
}

jQuery ui ダイアログ内の iframe 内にある div の高さの値にアクセスしようとしていますが、これまでアクセスできませんでした。divの高さの値を取得するにはどうすればよいですか? divのidは、iframe内のnotificationDialog内にあるnotification_containerですか?

編集 - 関数はページの onClick で呼び出され、表示する通知 ID (nid) を関数に渡すことに注意してください。

4

1 に答える 1

3
$("iframe").contents().find("#selector");

これは、iframeのコンテンツがローカルでアクセスされる場合にのみ許可されることに注意してください。そうしないと、アクセス拒否エラーが発生します。

于 2012-06-12T17:57:05.550 に答える