Как стать автором
Обновить

Reader Режим для Хабра

Время на прочтение1 мин
Количество просмотров597
Случается, что текст или изображения поста на Хабре не помещаются на экране.

Было бы удобно иметь возможность отключать правую панель (Прямой эфир, облако тегов) когда она не нужна.

Решение для Firefox под катом



1) Устанавливаем Greasemonkey
2) Добавляем туда простенький скрипт Habrahabr.ru Reader Mode

Либо устанавливаем с исходника:
// ==UserScript==
// @name habr_reader_mode
// @namespace habr
// @include habrahabr.ru*
// @include http://*.habrahabr.ru/*
// ==/UserScript==

var prevWidth = null;

SwitchReaderMode(GM_getValue('readerModeEnabled', false));

function SwitchReaderMode(enabled)
{
var mainContent = document.getElementById('main-content');
var sidebar = document.getElementById('sidebar');

if (mainContent && sidebar)
{
if (enabled)
{
sidebar.style.display= 'none';
prevWidth = mainContent.style.width;
mainContent.style.width = '100%'
}
else
{
if (prevWidth == null)
return;
sidebar.style.display= 'block';
mainContent.style.width = prevWidth;
}
}
}

GM_registerMenuCommand("Habr -> Reader Mode", function(){
SwitchReaderMode(true);
GM_setValue('readerModeEnabled', true)
});

GM_registerMenuCommand("Habr -> Normal Mode", function(){
SwitchReaderMode(false);
GM_setValue('readerModeEnabled', false)
});


Вот, собственно, и все.

Теперь в Tools -> Greasemonkey — >User Commands имеем команды для управления правой панелькой.

ps. Скрипт только-что написан, за 5 мин, скорее всего есть широкое поле для улучшений :)

UPD: Обновлен скрипт. Добавлено сохранение состояния при переходе между страницами.

Теги:
Хабы:
Всего голосов 16: ↑16 и ↓0+16
Комментарии9

Публикации

Истории

Ближайшие события

19 августа – 20 октября
RuCode.Финал. Чемпионат по алгоритмическому программированию и ИИ
МоскваНижний НовгородЕкатеринбургСтавропольНовосибрискКалининградПермьВладивостокЧитаКраснорскТомскИжевскПетрозаводскКазаньКурскТюменьВолгоградУфаМурманскБишкекСочиУльяновскСаратовИркутскДолгопрудныйОнлайн
24 – 25 октября
One Day Offer для AQA Engineer и Developers
Онлайн
25 октября
Конференция по росту продуктов EGC’24
МоскваОнлайн
26 октября
ProIT Network Fest
Санкт-Петербург
7 – 8 ноября
Конференция byteoilgas_conf 2024
МоскваОнлайн
7 – 8 ноября
Конференция «Матемаркетинг»
МоскваОнлайн
15 – 16 ноября
IT-конференция Merge Skolkovo
Москва
25 – 26 апреля
IT-конференция Merge Tatarstan 2025
Казань