Ну ... обработка событий в greasemonkey не легка.Если вы хотите связать обратный вызов с событием загрузки для iframe, попробуйте что-то подобное
function callback() {
$('#pageNav').prepend('<li id="navShare" class="topNavLink middleLink"><a accesskey="1" >Google+ Share</a></li>');
}
document.getElementById('googleBarFrame').addEventListener('load', callback, false);
Я не проверял это, поэтому он может не работать из-за чего-то глупого (например, я неконечно, если имя события, переданное в «addEventListener», равно «load» или «onload»).
Этот метод (addEventListener) работал для меня с событием «click» в greasemonkey, поэтому он также может работать с событием load.