2013-03-16 4 views
1

I'am обновление старого кода и эта часть не работает:документ не является членом WindowBase

IFrameElement iframe = query('#myframe iframe'); 
Window iframeW = iframe.contentWindow;// cast error 
var myframeDoc = iframeW.document; 

Я изменил Window к «WindowBase`:

IFrameElement iframe = query('#myframe iframe'); 
WindowBase iframeW = iframe.contentWindow; 
var myframeDoc = iframeW.document; 

Но document не член WindowBase. Я хочу, чтобы получить доступ к нему для запроса, как это:

myframeDoc.query("#myId"); 

С помощью JavaScript, решение работает:

var myframeDoc = document.querySelector('#myframe iframe').contentWindow.document; 

ответ

2

плавающего фрейма-х и Windows, имеют немного разные интерфейсы, поэтому вы должны использовать WindowBase, а не Window.

Вы можете видеть, что тип IFrameElement.contentWindow - это WindowBase в документах API, и вы также должны видеть его во всплывающих документах в редакторе.

+0

Действительно. Я обновляю старый код, и я обнаружил, что он изменил его. Моя новая проблема __document__ не является членом __WindowBase__. Моя потребность в запросе на dom как это: __myframeDoc.query ("myid") __ –

+0

Отличный вопрос. Возможно, вы захотите обновить этот вопрос, чтобы было ясно, что в WindowBase отсутствует документ-получатель, и это определенно стоит отчета об ошибке. –

+0

Спасибо! Я открываю его http://dartbug.com/9224 –

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