Я пытаюсь закрыть FancyBox из iframe, но parent.$
всегда undefined
. Это - мой iframe JavaScript:
Замена parent.$.fancybox.close();
с alert('clicked');
работает просто великолепно. Я не понимаю почему parent.$
undefined
когда iframe находится в том же домене.
Я использую WordPress 2.9.1 с FancyBox для плагина Wordpress.
//server.local/web/test/index.php
//server.local/web/test/wp-content/plugins/wp-test/test.htm
Первым из этих URL является основная страница, второй является iframe страница; server.local
мой домашний тестовый сервер.
Какие-либо идеи? Я могу pastebin весь источник, если это было бы полезно.
Потратил довольно много часов, пытаясь отладить это и никуда не попал. Поэтому я переключил плагин 'FancyBox for WordPress' с последней версией FancyBox, и он был исправлен. Действительно следовало попробовать это раньше.
Проведя некоторое время с WordPress и его различные плагины, я бы рекомендовал называть вещи вручную, а не полагаться на плагины. Это просто добавляет еще один уровень сложности, который, если вы знаете, что вы делаете, не должен быть там.
Спасибо Дагу за указание соответствующего синтаксиса для iframe к родительскому окну jQuery в WordPress.
Недавно я нашел структуру, которая очень похожа на джанго. Это называется playframework и вы можете найти его здесь:
Я предлагаю вам посмотреть видео на первой странице.
Еще одна джанго-подобная структура на основе Java - это Spring Roo, но, на мой взгляд, она не совсем готова. В прошлый раз, когда я использовал его, документация практически отсутствовала.
http://www.springsource.org/roo
-121--1554726-Джанго можно запустить в jvm с помощью jython, дополнительная информация здесь http://docs.djangoproject.com/en/dev/howto/jython/
-121--1554729- Она не определена, так как WordPress выполняет jQuery в режиме noConflict
. Вместо этого используйте:
parent.jQuery.fancybox.close();
noConflict
режимов означает, что $
не равен jQuery. Необходимо явным образом использовать jQuery
для доступа к тому, что обычно доступно с помощью $
.
Это работает для меня;)
<a href="javascript:parent.jQuery.fn.fancybox.close();" >
Спасибо за этот пост, он на самом деле немного помог мне ... Я чувствую себя плохо, потому что это заняло у меня всего несколько минут, и Я ЗНАЮ, как разочаровывает Fancybox для Wordpress !!
Здравствуйте, Любой, у кого возникают проблемы с закрытием iFrame Fancy Box при ручной установке Fancy Box в Wordpress 3.0:
Воспользуйтесь этой ссылкой в своем iframe:
<a href="#" onClick="parent.jQuery.fancybox.close();" title="Close window">close fancybox</a>
Это работает:)
Ни одно из предложений не сработало для меня. Мне пришлось обойти эту проблему, используя следующий код. Возможно, последняя версия поддерживает подход parent.jQuery.fancybox.close();, но старые версии с этим не работают.
Для существующих сайтов со старыми версиями плагинов/Jquery попробуйте следующее
function close_window()
{
$("#fancy_outer",window.parent.document).hide();
$("#fancy_overlay",window.parent.document).hide();
//window.top.window.$.fancybox.close(); this also does not work :(
}
вы можете объявить и использовать функцию close_window в содержимом Iframe.