グーグルバーのリンクを変更するには?[閉まっている]


9

Chromeを使用していて、バーのリンクを変更したいのですが、方法がわかりません。それはGreasemonkeyスクリプトかもしれませんが、私はそれを書く方法を知りません。


Googleのウェブサイトにアクセスしたときに表示されるブックマークバーまたはGoogleナビゲーションバーを話しているのですか。
Rebecca Dessonville 2012年

@デズうん。新しいGoogleの黒いバーについて。
Garmen1778、2012年

グーグルは数年前にグーグル・バーを引退した。
エール

回答:


5

再配置Google Appsのメニューバー userscriptはあなたのためにかなりよく動作するはずです。

必要に応じてアイテムを追加したり移動したりするのはかなり簡単に見えます。スクリプトが実行するのは、現在のリストアイテムを削除して新しいリストアイテムで置き換えることだけです。

したがって、追加するリンクのリストに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

私は、jQueryを使用してGmailとカレンダーのリンクをGoogle+のリンクの直後に移動するChrome用のユーザースクリプトを作成しました。同僚の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);
}

1

スクリプトなしでそれを行うことはできません。

私はgreasemonkeyスクリプトについては知りませんが、Chromeユーザーのために、Googleバーのリンクを並べ替えるオプションがあるChrome WebストアにGTools +拡張があります。


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);
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.