2013-05-06 1 views
0

Я пытаюсь получить эту функцию для создания данных, которые я им даю, и отобразить их в моем IFRAME. Я просто не могу его отобразить. Исходя из этого кода, любые идеи?Данные Javascript и buidling, а затем возвращаются в iframe

function playBlackjack() 
{ 
    var data = "<table border=0 style='margin:auto'>" 
    data += "<tr>" 
    data += "<td><form><input type="BUTTON" onClick="Javascript:dealCards()" value="Deal > > >"></form></td>" 
    data += showCards(0) 
    data += "<td><form><input type="BUTTON" onClick="Javascript:hitCard()" value="< < < Hit Me"></form></td>" 
    data += "</tr></table> " 
    return productarea.document.writeln(data) 
    productarea.document.close() 
} 
+0

Если предположить, что 'productarea' является IFrame, вы хотите' contentDocument' вместо 'document'. –

+0

Я пробовал это и до сих пор не повезло. Я чувствую, что это связано с моими предложениями. – Dolbyover

+0

Да, это тоже неправильно. Попробуйте использовать одинарные кавычки внутри двойных кавычек и следите за консолью. –

ответ

0
  1. Вы уверены, что у вас нет проблем между доменами. Вы не можете манипулировать содержимым междоменного iframe.
  2. Если на разных доменах вы можете использовать передачу сообщений. Например, если документ A содержит элемент iframe, содержащий документ B, а сценарий в документе A вызывает postMessage() в объекте Window документа B, то событие сообщения будет запущено на этом объекте, помеченном как исходящее из окна документа А. сценарий в документе А может выглядеть

    var o = document.getElementsByTagName('iframe')[0]; 
    o.contentWindow.postMessage('Hello world', 'http://b.example.org/'); 
    

Чтобы зарегистрировать обработчик событий для входящих событий, скрипт будет использовать addEventListener() (или аналогичные механизмы). Например, сценарий в документе B может выглядеть следующим образом:

window.addEventListener('message', receiver, false); 
function receiver(e) { 
    if (e.origin == 'http://example.com') { 
    if (e.data == 'Hello world') { 
     e.source.postMessage('Hello', e.origin); 
    } else { 
     alert(e.data); 
    } 
    } 
} 

Этот скрипт сначала проверяет домен ожидаемый домен, а затем смотрит на сообщение, которое он либо показывает пользователю, или отвечает, посылая сообщение обратно к документу, который отправил сообщение в первую очередь.

через Invoking JavaScript code in an iframe from the parent page

http://dev.w3.org/html5/postmsg/#web-messaging через

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