2016-01-31 6 views
1

У меня есть iframe. Он был внутри модального. Смотрите код ниже:Содержимое iframe теряется после открытия диалогового окна jquery modal

<iframe id="edit-text-modal-value_ifr" src='javascript:""' frameborder="0" allowtransparency="true" title="Rich Text AreaPress ALT-F10 for toolbar. Press ALT-0 for help" style="width: 100%; height: 100px; display: block;"> 
    #document 
    <!DOCTYPE> 
    <html> 
     <head xmlns="http://www.w3.org/1999/xhtml"> 
      <style id="mceDefaultStyles" type="text/css"> 
       .mceResizeHandle { 
        position: absolute; 
        border: 1px solid black; 
        background: #FFF; 
        width: 5px; 
        height: 5px; 
        z-index: 10000 
       } 
       .mceResizeHandle:hover { 
        background: #000 
       } 
       img[data-mce-selected] { 
        outline: 1px solid black 
       } 
       img.mceClonedResizable, 
       table.mceClonedResizable { 
        position: absolute; 
        outline: 1px dashed black; 
        opacity: .5; 
        z-index: 10000 
       } 
      </style> 
      <base href="http://localhost/drupal-7.34/"> 
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
      <link type="text/css" rel="stylesheet" href="http://localhost/drupal-7.34/sites/all/libraries/tinymce/jscripts/tiny_mce/themes/advanced/skins/default/content.css"> 
      <link type="text/css" rel="stylesheet" href="http://localhost/drupal-7.34/themes/bartik/css/layout.css"> 
      <link type="text/css" rel="stylesheet" href="http://localhost/drupal-7.34/themes/bartik/css/style.css"> 
      <link type="text/css" rel="stylesheet" href="http://localhost/drupal-7.34/themes/bartik/css/colors.css"> 
     </head> 

     <body id="tinymce" class="mceContentBody " onload="window.parent.tinyMCE.get('edit-text-modal-value').onLoad.dispatch();" contenteditable="true" spellcheck="false" dir="ltr"> 
      <p> 
       <br data-mce-bogus="1"> 
      </p> 
     </body> 
    </html> 
</iframe> 

Когда я открываю другую модальность с помощью JQuery модальное плагин, содержимое IFrame было потеряно. Зачем? Как я могу это предотвратить?

Jquery код:

jQuery('#myid_templates_editor_insertf_field_modal').dialog('open');  

Мой новый код Iframe в:

<iframe id="edit-text-modal-value_ifr" src='javascript:""' frameborder="0" allowtransparency="true" title="Rich Text AreaPress ALT-F10 for toolbar. Press ALT-0 for help" style="width: 100%; height: 100px; display: block;"> 
    #document 
    <html> 
     <head></head> 
     <body></body> 
    </html> 
</iframe> 
+1

, похоже, оставили много важной информации, например, как инициализируется инициализация и какие элементы и как инициализируются диалоги. Внутренности фреймов действительно не актуальны здесь ... это то, как они генерируются, что – charlietfl

ответ

1
<script type="text/javascript"> 
    $('.the-modal').bind('shown', function() { 
     tinyMCE.execCommand('mceAddControl', false, 'mce-<?=$reply["id"]?>'); 
    }); 

    $('.the-modal').bind('hide', function() { 
     tinyMCE.execCommand('mceRemoveControl', false, 'mce-<?=$reply["id"]?>'); 
    }); 
</script> 

Это была ошибка, и я нашел решение here.

0

хорошо, конечно он будет gone.because модальных данных создается dynimacally.so то, что вы можете сделать, когда вы звоните другому режим копирует объект iframe в другой объект-объект

var tmp=document.getelememntbyid('iframeid'); 

и объявить переменную tmp gl oabaly и использовать его снова, когда захотите.

Смежные вопросы