Я використовую Chrome, і я хочу змінити посилання панелі, але не знаю як. Це може бути сценарій Greasemonkey, але я не знаю, як це написати.
Я використовую Chrome, і я хочу змінити посилання панелі, але не знаю як. Це може бути сценарій Greasemonkey, але я не знаю, як це написати.
Відповіді:
Користувацький сценарій користувальницької панелі меню перестановки 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();
Я створив користувальницький сценарій для 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);
}
Ось пара підказок, використовуючи 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);