Ваша переменная - true, а не объект из-за правил политики того же домена. Как и в случае с iframe, если открываемое всплывающее окно находится не в том же домене или поддомене, оно будет потеряно для вас после его создания. Если бы я мог сказать, в Интернете было бы очень небезопасно, откройте (скрытый) iframe на моем сайте gmail.com и сможете прочитать вашу электронную почту.
Даже если всплывающее окно находится на поддомене, вам нужно проделать дополнительную работу и установить значение document.domain обоих окон в корневой домен (например, mydomain.com). Это делается для того, чтобы всплывающий сайт хотел быть известным его родителю (опять же, подумайте о безопасности, если бы мое сообщество coke.ning.com могло открыть скрытый iframe для вашего pepsi.ning.com и предпринять попытки грубой силы на логин и т. д.)
Чтобы доказать мою точку зрения, попробуйте перейти на google.com и открыть Firebug (или Inspector, если вы используете Safari или Chrome) и выполните:
var bob = window.open('http://google.com' , "moderatorWindow", 'width=300, height=300');
bob.window.location.href; // returns "http://www.google.com/"
Наконец, не стесняйтесь вызывать jQuery на дочерней странице, чтобы изменить элементы на той же странице и наоборот, но вы не можете использовать jQuery с одной страницы, чтобы изменить dom другой страницы. Я попытался сделать это несколько лет назад, чтобы сэкономить время загрузки, и, если что-то не изменилось, это не работает. Кажется, jQuery привязан к объекту окна, в котором он был создан. Странные вещи случаются.