<rmcreative>

RSS

Все заметки с тегами «Safari, JavaScript»

Можно уточнить:

    (1)
  1. (1)
    (1)
    (2)
    (1)
    (1)
  1. Safari и popup-ы

    30 августа 2009

    В Safari 3 и 4 имеется встроенный блокиратор popup-ов, который несколько отличается от всех остальных браузеров и запросто может попортить жизнь первый раз сталкивающегося с этим разработчика.

    Отключаем блокиратор попапов. Делается из меню. Пункт называется «Block popup windows». В 3-м он расположен в меню «Edit», в 4-м — в меню настроек. Если всё заработало — это наш случай. Включаем блокиратор обратно.

    Правила, по которым работает блокиратор:

    • Пользователь щёлкнул по ссылке или кнопке, которая вызывает функцию A(). Функция непосредственно в теле выполняет window.open → попап блокирован не будет.

    • Пользователь щёлкнул по ссылке или кнопке, которая вызывает функцию A(). A() вызывает другую функцию B(), которая уже выполняет window.open → попап будет блокирован.

    • window.open вызывается по событию, не связанному с действиями пользователя (например, onload) → попап будет блокирован.

    Итого, решение:

    • Повесить открытие попапа на действие пользователя.

    • Выполнять window.open непосредственно в функции, повешенной на это действие.

    1 комментарий
  2. Определяем браузер из JS

    29 января 2009

    В продолжение темы определения браузеров Gareth Heyes привёл хаки для других распространённых браузеров:

    Читаем

    5 комментариев
  3. Новый Firebug Lite

    25 июля 2008

    Ура! Теперь Lite-версия имеет очень похожий интерфейс, приучена к Inspect с просмотром текущего CSS, имеет нормальный DOM-инспектор и консольку.

    Если кто не знает — данная штука позволяет получить «облегчённую версию» FireBug в IE, Opera или Safari.

    [Букмарклет](javascript:var firebug=document.createElement('script');firebug.setAttribute('src','http://getfirebug.com/releases/lite/1.2/firebug-lite-compressed.js');document.body.appendChild(firebug);(function(){if(window.pi&&window.firebug){firebug.init();}else{setTimeout(arguments.callee);}})();void(firebug);) — можно затащить к себе на браузерную панельку и пользоваться.

    Официальная страничка

    4 комментария