Ответы пользователя по тегу Google Chrome
  • UserScript белого списка для Chromium?

    spmbt
    @spmbt
    > «When installing Whitelist for Chrome, your browser will warn you that this extension can access your data on all sites, and your browsing history.»
    ---Это верно и для юзерскриптов — такова природа скриптового языка: если есть доступ к окружению (window страницы сайта), то вы потенциально получаете и меняете все данные на ней.

    Расширение для блокировки, наоборот, удобнее, потому что скрипт в нём (background.js) запускается до загрузки страницы и может отменить загрузку вообще. Юзерскрипт запускается в конце страницы (без вариантов, ну или ещё позже). Поэтому для предотвращения загрузки нужно не разрешать открывать страницы, т.е. анализировать ссылки переходов и форм. В этой системе — очень легко иметь дыры — скрипт не сможет ловить переходы-редиректы. Значит, безопасность не обеспечит. Расширение (или приложение/апп) — наоборот, можно построить с обеспечением безопасности, кроме случаев, когда вредоносные страницы попадутся после разрешения их открывания.
    Ответ написан
    1 комментарий
  • Можно ли создать расширение под Chrome с таким функционалом

    spmbt
    @spmbt
    Делать спец. скрипты где могут попасться ссылки на форму совсем не интересно, мне тогда проще через websocket, postMessage или sessionStorage замутить, без всяких расширений и кроссбраузерно…
    F в самом деле, зачем Вам расширение, если через localStorage это реализуемо с небольшой задержкой. Вкладка формы опрашивает переменную из хранилища; если пришло сообщение — берётся фокус, выполняется действие. А на страницах вызова формы — простые скрипты, отключающие открывание в новой вкладке и создающие эту переменную в хранилище (Url ссылки), если Хром. PostMessage тут может тоже наткнуться на непрохождение сообщений из-за политики Хрома. Ещё вариант — Custom Events, но тоже, скорее всего, будут барьеры между ветками вкладок.
    Ответ написан
  • Как в Google Chrome увеличить высоту поля со списком <select>?

    spmbt
    @spmbt
    юзерскрипт:
    var sA = document.querySelectorAll('select[size=4]');
    if(sA && sA.length)
        for(var i=0, iL = sA.length; i < iL; i++) if(sA.parentNode)
            sA[i].setAttribute('size', 8);
    
    Ответ написан
    Комментировать