В Safari 3 и 4 имеется встроенный блокиратор popup-ов, который несколько отличается от всех остальных браузеров и запросто может попортить жизнь первый раз сталкивающегося с этим разработчика.
Отключаем блокиратор попапов. Делается из меню. Пункт называется «Block popup windows». В 3-м он расположен в меню «Edit», в 4-м — в меню настроек. Если всё заработало — это наш случай. Включаем блокиратор обратно.
Правила, по которым работает блокиратор:
Пользователь щёлкнул по ссылке или кнопке, которая вызывает функцию A(). Функция непосредственно в теле выполняет window.open → попап блокирован не будет.
Пользователь щёлкнул по ссылке или кнопке, которая вызывает функцию A(). A() вызывает другую функцию B(), которая уже выполняет window.open → попап будет блокирован.
window.open вызывается по событию, не связанному с действиями пользователя (например, onload) → попап будет блокирован.
Итого, решение:
Повесить открытие попапа на действие пользователя.
Выполнять window.open непосредственно в функции, повешенной на это действие.