Клуб Народной карты

Хак-инструмент для НЯК: скрытие панели атрибутов: обновление v2.0

Снова всем привет, и я тащу обновления для своего инструмента. Впрочем, ловите:

javascript:(function(){window.nkHack={};window.nkHack.rf={};var style=window.document.createElement('style');style.id='plplp'; window.document.body.appendChild(style);window.nkHack.rf.dsp={sel:'body div.nk-sidebar-view.i-bem.nk-sidebar-view_js_inited',all: {hide:function(){window.document.querySelector(window.nkHack.rf.dsp.sel).style.display='none';}, show:function(){window.document.querySelector(window.nkHack.rf.dsp.sel).style.display='block';},}, attr:{hide:function(){ window.nkHack.rf.dsp.styleElem.innerHTML=window.nkHack.rf.dsp.sel+' div div.nk-scrollable.nk-geoobject-viewer-view__content.nk-section , '+window.nkHack.rf.dsp.sel+' div div.nk-geoobject-editor-view__content.nk-section {display:none !important}'},show:function(){window.nkHack.rf.dsp.styleElem.innerHTML=window.nkHack.rf.dsp.sel+' div div.nk-scrollable.nk-geoobject-viewer-view__content.nk-section , '+window.nkHack.rf.dsp.sel+' div div.nk-scrollable.nk-geoobject-editor-view__content.nk-section { display:block !important}'}},bool:true,styleElem:document.getElementById('plplp'),}; if(window.confirm('Скрывать всю панель или только атрубуты? ОК/ДА - всю. ОТМЕНА/НЕТ - только атрибуты.')){window.nkHack.rf.dsp.act_type='all'; }else{window.nkHack.rf.dsp.act_type='attr';};var btn = window.document.createElement('button'); btn.className='button button_theme_on-map button_size_l button_view_action'; btn.style.marginLeft='8px';btn.innerHTML='<span class="button__text">Скрыть</span>';window.nkHack.rf.dsp.func=function(){if(window.nkHack.rf.dsp.bool){window.nkHack.rf.dsp[window.nkHack.rf.dsp.act_type].hide(); btn.innerHTML='<span class="button__text">Показать</span>';window.nkHack.rf.dsp.bool=false;}else{window.nkHack.rf.dsp[window.nkHack.rf.dsp.act_type].show();btn.innerHTML='<span class="button__text">Скрыть</span>';window.nkHack.rf.dsp.bool=true;};}; btn.onclick=window.nkHack.rf.dsp.func;btn.style.background='#55C755';window.document.querySelector('body header div.nk-app-bar-view.i-bem.nk-app-bar-view_js_inited').style.marginLeft='-525px'; window.document.querySelector('body header div.nk-app-bar-view.i-bem.nk-app-bar-view_js_inited').appendChild(btn);}())

Что нового? 1. Кнопка в (я надеюсь) более удобном месте. 2. По просьбам добавлена возможность скрывать только сами атрибуты, выбирается при инициализации.

Но есть и минусы. Теперь скрипт можно запускать только после полной загрузки НЯКа. Т.е. встроить в расширение, запускающее скрипт при открытии страницы, уже не получится. Если интересно почему, спрашивайте в комментариях. Отвечу.

Как пользоваться и демонстрация старого не исправленного бага здесь.

Отписывайтесь о впечатлениях.

23 комментария
Это на много лучше чем я сделал. Спасибо Федор.
Обновлено 14 июня 2017, 09:47
МВА,
Для расположения кнопки в заданом положении могу сделать вам модуль)
Feodor0090,
Федор, все хорошо сделано и красиво. Я просто перенес табличку на более удобное место,а Вы еще и эстетику применили. Спасибо.
Feodor0090,
Федор, спасибо. Передвинул немного вправо изменив  style.marginLeft='-525px';  на 450
Можно, пожалуйста, для чайников объяснить зачем и как пользоваться?
Денис П.,
Это освобождает экран монитора от панели атрибутов. Очень удобно при создании контуров. Как создать и пользоваться, можно посмотрить в комментариях  Бегущего Forestа  здесь .
Обновлено 16 июня 2017, 09:28
Интересная штука. Но что это?
Котик,
А как она получилась? У меня такое получается, только если несколько раз активировать букмарклет. В версии 3.0 (финальной) исправлю.
Ярослав (bforest)
14 июня 2017, 11:25
Крутой инструмент! :)
Спасибо :)
Красиво :) Но мне всё равно так больше нравится.
Семён Федотов
15 июня 2017, 00:07
Уже опробовал, обалденно! Осталось только этот баг починить - вообще замечательно будет)
Семён Федотов,
Семен, а что за баг? Я ни чего не замечаю.
Семён Федотов
16 июня 2017, 15:33
МВА,
перечитайте предпоследний абзац в посте. Вкратце: вы скрыли панель и нажали на какой-либо объект. Потом нажимаете «Показать», но панель не загрузилась.
Семён Федотов,
Не знаю почему у Вас не работает. У меня загружается в свернутом виде, но все четыре функции (изменить, удалить, история и комментарии) включаются.  Не знаю почему, но было уже три раза так: Скрыл панель - рисуешь контур- и в районе «создать» ставишь точки, весь нарисованный контур пропадает. Сначала подумал что при скрытой панели попадаешь на точки «удалить», но когда специально пытаешься удалить в слепую не удаляется.
▓█ ƬΛV █▓░
15 июня 2017, 21:55
Замечательно! Спасибо!
Фёдор, почему то букмарклет перестал работать. Может быть по тому что командаЯ. закрепила на мертво панель атрибутов после моего поста. Пост еще не опубликовали, как всегда думают. У Вас как работает нормально? МВА
На модерации
Доброго всем времени суток! Начну с критики. Более года была поднята тема о том что бы сделать панель атрибутов меньше или совсем невидимой. Команда Яндекса всячески отмахивалась, что это сложно и займет много трудов (примерно так, не буду рыться что бы найти точный ответ, так как это тоже сложно и займет много трудов). Но вот "умелец-Левша" вмиг создал букмарклет который стал скрывать панель атрибутов. Огромное спасибо Рыжову Федору, теперь работать одно удовольствие. Русуем теперь во весь экран, появилась возможность применять прозрачность карты с программой Vitrite. И появилось одно НО. Карта подложка лежит "мёртво" (использую SAS-планету, одинаковая масштабность и много слоёв), а вот верхняя карт Яндекс нет-нет и дергается.
Обращаюсь к сотрудника Я. и всем умельцам: Можно ли верхнюю карты после корректировки точек совпадения прилипить к нижней, что бы не дергалась до нужного момента?
Раз пошла речь про прилипание задам ещё раз вопрос: Можно ли прилипить границы категории АТД к границам рек? Есть желание исправить на карте красиво и правильно, но делать двойную и тройную работу руки не поднимаются. Правда и этот вопрос уже не однократно поднимался
Рыжов Фёдор, Alexxegorov, ☭Okclick и многим другим огромная благодарность за то что облегчаете наш труд. Пытался найти больше имён из подписок но увы, тогда ещё вопрос.
Вопрс к команде Я. Почему старые подписки исчезают и остается только Х Заголовок не указан и К сожалению, пост был удален ?
2 КОММЕНТАРИЯОтписаться от комментариев к посту
Чтобы изменить шрифт или добавить ссылку, выделите часть текста.Отправить
yndx-Misha Fleget
Сотрудник Яндекса6 июля, 13:50
Доброго дня вам, Виктор!
Нам нужно время на подготовку ответов на ваши вопросы, поэтому просим немного подождать. Постараемся связаться с вами уже завтра.
МВА
вчера, 09:58
yndx-Misha Fleget, Добрый день. Что случилось что панель атрибутов перестала убираться?
МВА,
разработчики немного изменили код верхней панельки, в которую кнопка добавляется, и скрипт теперь её не находит.

Нужно заменить в двух местах в коде скрипта строку
div.nk-app-bar-view.i-bem.nk-app-bar-view_js_inited
на
div.nk-app-bar-view

А первая версия как работала, так и работает, потому что там кнопка не встраивается в интерфейс, а просто отображается поверх всего.

На самом деле, нормальная ситуация. Нужно всегда быть готовым к тому, что сторонние примочки могут перестать работать после очередного обновления, пока авторы не адаптируют их к новой версии НЯК.
Обновлено 8 июля 2017, 11:01
☭Okclick,
Огромное спасибо всё прекрасно получилось. Вот адрес.
javascript:(function(){window.nkHack={};window.nkHack.rf={};var style=window.document.createElement('style');style.id='plplp'; window.document.body.appendChild(style);window.nkHack.rf.dsp={sel:'body div.nk-sidebar-view.i-bem.nk-sidebar-view_js_inited',all: {hide:function(){window.document.querySelector(window.nkHack.rf.dsp.sel).style.display='none';}, show:function(){window.document.querySelector(window.nkHack.rf.dsp.sel).style.display='block';},}, attr:{hide:function(){ window.nkHack.rf.dsp.styleElem.innerHTML=window.nkHack.rf.dsp.sel+' div div.nk-scrollable.nk-geoobject-viewer-view__content.nk-section , '+window.nkHack.rf.dsp.sel+' div div.nk-geoobject-editor-view__content.nk-section {display:none !important}'},show:function(){window.nkHack.rf.dsp.styleElem.innerHTML=window.nkHack.rf.dsp.sel+' div div.nk-scrollable.nk-geoobject-viewer-view__content.nk-section , '+window.nkHack.rf.dsp.sel+' div div.nk-scrollable.nk-geoobject-editor-view__content.nk-section { display:block !important}'}},bool:true,styleElem:document.getElementById('plplp'),}; if(window.confirm('Скрывать всю панель или только атрубуты? ОК/ДА - всю. ОТМЕНА/НЕТ - только атрибуты.')){window.nkHack.rf.dsp.act_type='all';
}else{window.nkHack.rf.dsp.act_type='attr';};var btn = window.document.createElement('button'); btn.className='button button_theme_on-map button_size_l button_view_action'; btn.style.marginLeft='5px';btn.innerHTML='<span class="button__text">Скрыть</span>';window.nkHack.rf.dsp.func=function(){if(window.nkHack.rf.dsp.bool){window.nkHack.rf.dsp[window.nkHack.rf.dsp.act_type].hide(); btn.innerHTML='<span class="button__text">Показать</span>';window.nkHack.rf.dsp.bool=false;}else{window.nkHack.rf.dsp[window.nkHack.rf.dsp.act_type].show();btn.innerHTML='<span class="button__text">Скрыть</span>';window.nkHack.rf.dsp.bool=true;};}; btn.onclick=window.nkHack.rf.dsp.func;btn.style.background='#75C20';window.document.querySelector('body header div.nk-app-bar-view').style.marginLeft='-450px'; window.document.querySelector('body header div.nk-app-bar-view').appendChild(btn);}())
Обновлено 8 июля 2017, 11:41
Абсолютно не шарю в js. Хотел бы попросить создать букмарклет для этого сайта. Переход на топографическую карту.
Не работает.
Котик,
Теоретически и не должно. С апреля прошлого года вышел не один десяток релизов. Поменялось всё. У меня где-то валялись недоделанные обновления, если этот инструмент ещё используется (вижу, что да), могу доделать.