Google卻有時會更新頁面HTML碼導致Userscript失效,當然Firefox都有活躍的Extension如Thumbnail Zoom做到。
但既然如此,不如我自己寫一個出來,反正不是什麼深奧技術。
想使用的人,可以Select All然後Copy&Paste另傳一個txt文件,rename做js檔,拉去Firefox就可以安裝。
// ==UserScript==
// @name           Google Image Search Preview
// @version      18/09/2011
// @namespace      達MiNG
// @description    Mouse over and preview the image on Google images search result. This userscript will redirect Google Images to basic version. Find me at http://www.netatlantis.com/?p=3115
// @icon       https://lh5.googleusercontent.com/-Sookp-flc2I/TnXlDfP-0OI/AAAAAAAABTU/1vNWqGX4kYI/google-icon.png
// @require        http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js
// @include        http://www.google.com/search?q=*&tbm=isch*
// ==/UserScript==
function addGlobalStyle(css) {
 var head, style;
 head = document.getElementsByTagName('head')[0];
 if(!head) {
  return;
 }
 style = document.createElement('style');
 style.type = 'text/css';
 style.innerHTML = css;
 head.appendChild(style);
}
// a function that loads jQuery and calls a callback function when jQuery has finished loading
function addJQuery(callback) {
 var script = document.createElement("script");
 script.setAttribute("src", "http://ajax.googleapis.com/ajax/libs/jquery/1.5.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);
}
this.imagePreview = function() {
 /* CONFIG */
 xOffset = 10;
 yOffset = 30;
 // these 2 variable determine popup's distance from the cursor
 // you might want to adjust to get the right result
 /* END CONFIG */
 $("a.preview").hover(function(e) {
  this.t = this.title;
  this.title = "";
  var c = (this.t != "") ? "" + this.t : "";
  var src = this.href;
  if(src.indexOf('imgurl=') != -1) {
   var vars = [], hash;
   var hashes = src.slice(window.location.href.indexOf('?') + 1).split('&');
   for(var i = 0; i < hashes.length; i++) {
    hash = hashes[i].split('=');
    vars.push(hash[0]);
    vars[hash[0]] = hash[1];
   }
   src = vars["imgurl"];
  }
  $("body").append(" " + c + "
" + c + "
");
  $("#preview").css("top", (e.pageY - xOffset) + "px").css("left", (e.pageX + yOffset) + "px").fadeIn("fast");
 }, function() {
  this.title = this.t;
  $("#preview").remove();
 });
 $("a.preview").mousemove(function(e) {
  $("#preview").css("top", (e.pageY - xOffset) + "px").css("left", (e.pageX + yOffset) + "px");
 });
};
// starting the script on page load
$(document).ready(function() {
 var standardUrl = window.location.href;
 if(standardUrl.indexOf('sout=1') == -1) {
  var addToUrl = '&sout=1';
  var basicUrl = standardUrl + addToUrl;
  window.location.replace(basicUrl);
 } else {
  addGlobalStyle('#preview{ position:absolute; border:1px solid #ccc; padding:0px; display:none;width:37px;height:37px;background-image:url(https://lh4.googleusercontent.com/-Nv-RqxGFQUg/TnXlCyUr_uI/AAAAAAAABTQ/hSiOpUTdufA/20088258937578778044.gif) }');
  $('#imgtb a').addClass('preview');
  // load jQuery and execute the main function
  addJQuery(imagePreview);
 }
});



