Как изменить ссылки на панели Google? [закрыто]

9

Я использую Chrome, и я хочу изменить ссылки на панели, но я не знаю как. Это может быть сценарий Greasemonkey, но я не знаю, как его написать.

Garmen1778
источник
Вы говорите Ott панель закладок или панель навигации Google, которая отображается при переходе на сайт Google?
Ребекка Дессонвиль
@ Dez Да. О новой черной полосе Google.
Garmen1778
Google удалил панель Google несколько лет назад.
Але

Ответы:

5

Пользовательский сценарий «Переупорядочить строку меню Google Apps» должен работать очень хорошо для вас.

Это выглядит довольно просто, чтобы добавить или переместить элементы, как вы хотите. Все, что делает скрипт, это удаляет текущие элементы списка и заменяет их новыми.

Таким образом, чтобы добавить Документы Google в список ссылок, вы должны добавить:

newOrderedList.innerHTML += '<li class=gbt><a target="_blank" class="gbzt" href="https://docs.google.com"><span class="gbtb2"></span><span class="gbts">Documents</span></a></li>';

Просто или ссылка на полный текст пользователя выглядит следующим образом:

// ==UserScript==
// @name          Rearrange Google Apps Menu Bar
// @namespace     http://divergentblue.com
// @version       0.1
// @description   Customizes the google black bar
// @include       *
// ==/UserScript==


function reformatList()
{
    // Remove the OL containing the nav links
    var divContainingOrderedList = document.getElementById('gbz');
    var orderedList = document.getElementById("gbz").getElementsByTagName("ol")[0];
    divContainingOrderedList.removeChild(orderedList);
    var newOrderedList = document.createElement("ol");
    newOrderedList.setAttribute("class", "gbtc");

    // Add Plus
    newOrderedList.innerHTML += '<li class=gbt><a target="_blank" class="gbzt" href="https://plus.google.com"><span class="gbtb2"></span><span class="gbts">+</span></a></li>';
    // Add Gmail
    newOrderedList.innerHTML += '<li class=gbt><a target="_blank" class="gbzt" href="https://mail.google.com"><span class="gbtb2"></span><span class="gbts">Gmail</span></a></li>';
    // Add Voice
    newOrderedList.innerHTML += '<li class=gbt><a target="_blank" class="gbzt" href="https://voice.google.com/"><span class="gbtb2"></span><span class="gbts">Voice</span></a></li>';
    // Add Calendar
    newOrderedList.innerHTML += '<li class=gbt><a target="_blank" class="gbzt" href="https://calendar.google.com/"><span class="gbtb2"></span><span class="gbts">Calendar</span></a></li>';
    // Add Contacts
    newOrderedList.innerHTML += '<li class=gbt><a target="_blank" class="gbzt" href="https://www.google.com/contacts"><span class="gbtb2"></span><span class="gbts">Contacts</span></a></li>';
    // Add Reader
    newOrderedList.innerHTML += '<li class=gbt><a target="_blank" class="gbzt" href="https://reader.google.com"><span class="gbtb2"></span><span class="gbts">Reader</span></a></li>';
    // Add News
    newOrderedList.innerHTML += '<li class=gbt><a target="_blank" class="gbzt" href="https://news.google.com"><span class="gbtb2"></span><span class="gbts">News</span></a></li>';
    // Add Finance
    newOrderedList.innerHTML += '<li class=gbt><a target="_blank" class="gbzt" href="https://finance.google.com"><span class="gbtb2"></span><span class="gbts">Finance</span></a></li>';

    // Add the OL to the DOM
    divContainingOrderedList.appendChild(newOrderedList);
}

reformatList();
кодировщик
источник
Это было круто, но это не работает на странице GMail. Кроме того, как вы держите раскрывающийся список «Больше»?
Примечательно,
3

Я сделал пользовательский скрипт для Chrome, который использует jQuery для перемещения ссылок Gmail и Календаря сразу после Google+. Он использует этот код моего коллеги tghw, чтобы добавить jQuery на страницу. Обновление: эта версия также добавляет голосовую ссылку Google

// ==UserScript==
// @name           Reorder Google links
// @namespace      http://adambox.org
// @description    Put the gmail and calendar links right after g+ where they belong
// ==/UserScript==

if (window.location.host.toLowerCase() == "www.google.com" || window.location.host.toLowerCase() == "mail.google.com")
{
    // a function that loads jQuery and calls a callback function when jQuery has finished loading
    function addJQuery(callback) {
      var script = document.createElement("script");
      var sProtocol = window.location.protocol;
      script.setAttribute("src", sProtocol + "//ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js");
      script.addEventListener('load', function() {
        var script = document.createElement("script");
        script.textContent = "(" + callback.toString() + ")();";
        document.body.appendChild(script);
      }, false);
      document.body.appendChild(script);
    }

    // the guts of this userscript
    function main() {
        var calendar = $('li.gbt:contains("Calendar")');
        var gplus = $('li.gbt:contains("+Adam")');
        var gmail = $('li.gbt:contains("Gmail")');

        calendar.insertAfter(gplus);
        gmail.insertAfter(gplus);

        var gvoiceLi = document.createElement("li");
        gvoiceLi.className = "gbt";
        gvoiceLi.innerHTML = '<a target="_blank" class="gbzt" href="https://www.google.com/voice"><span class="gbtb2"></span><span class="gbts">Voice</span></a>';
        $(gvoiceLi).insertAfter(calendar);

        var gplay = $('li.gbt:contains("Play")');
        gplay.hide();
    }

    // load jQuery and execute the main function
    addJQuery(main);
}
adambox
источник
1

Вы не можете сделать это без сценариев.

Я не знаю, для сценария greasemonkey, но для пользователей Chrome в веб-магазине Chrome есть расширение GTools +, в котором можно изменить порядок ссылок на панели Google.

Mentales
источник
1

Здесь пара подсказок, используя Greasemonkey. Я пишу сценарий очень быстро, это можно сделать лучше, но, возможно, это поможет. Есть пример, как добавить пользовательскую ссылку после Google More, и пример, как удалить ссылку.

Если у вас есть вопросы, пожалуйста, прокомментируйте, и я постараюсь добавить больше кода.

function addEntry()
{
    // If you want to add a link (for example to Google Books)
    if(document.getElementById("gbzc"))
    {
        newItem = document.createElement("li");
        newItem.setAttribute("class", "gbt");
        newItem.innerHTML = '<a target="_blank" class="gbzt" href="http://books.google.com/"><span class="gbtb2"></span><span class="gbts">Books</span></a>';

        topMenu = document.getElementById("gbzc")

        // Get the total menu entries
        var totalEntries = topMenu.getElementsByTagName("li").length;

        // Insert a link to the one before the last
        topMenu.insertBefore(newItem, topMenu.getElementsByTagName("li")[totalEntries]);
    }

    // If you want to remove a link (for example the first link to your Google+ profile)
    if(document.getElementById("gbzc"))
    {
        topMenu = document.getElementById("gbzc")

        // Get the first menu entry
        var child = topMenu.getElementsByTagName("li")[0];

        // Remove it
        topMenu.removeChild(child);
    }
}

setTimeout(addEntry, 0);
селезень
источник