מדיה ויקי:SearchEngines.js
מראה
הערה: לאחר הפרסום, ייתכן שיהיה צורך לנקות את זיכרון המטמון (cache) של הדפדפן כדי להבחין בשינויים.
- פיירפוקס / ספארי: להחזיק את המקש Shift בעת לחיצה על טעינה מחדש (Reload) או ללחוץ על צירוף המקשים Ctrl-F5 או Ctrl-R (במחשב מק: ⌘-R).
- גוגל כרום: ללחוץ על צירוף המקשים Ctrl-Shift-R (במחשב מק: ⌘-Shift-R).
- אדג': להחזיק את המקש Ctrl בעת לחיצה על רענן (Refresh) או ללחוץ על צירוף המקשים Ctrl-F5.
/**
* בחירה במנועי חיפוש שונים, מוויקיפדיה האנגלית
* מחבר:User:Gracenotes
*/
/*global $, mw */
$(function () {
var conf = mw.config.get([
'wgCanonicalSpecialPageName',
'wgScriptPath'
]),
searchEngines = [];
if (conf.wgCanonicalSpecialPageName !== 'Search') {
return;
}
var searchForm = document.forms.powersearch || document.forms.search;
if (!searchForm) {
return;
}
// Input field for advanced mode of Special:Search
var advSearchText = document.getElementById('loadStatus') || document.getElementById('powerSearchText');
if (!advSearchText) {
return;
}
var createOption = function (site, action, mainQ, addQ, addV) {
var opt = document.createElement('option');
opt.appendChild(document.createTextNode(site));
searchEngines.push([action, mainQ, addQ, addV]);
return opt;
};
var searchBox = searchForm.lsearchbox || searchForm.search;
var title = searchForm.title;
var selectBox = document.createElement('select');
$(searchForm).on('submit', function (e) {
var optSelected = searchEngines[selectBox.selectedIndex];
searchForm.action = optSelected[0];
searchBox.name = optSelected[1];
title.name = optSelected[2];
title.value = optSelected[3];
});
selectBox.appendChild(createOption('חיפוש פנימי', conf.wgScriptPath + '/index.php', 'search', 'title', 'Special:Search'));
selectBox.appendChild(createOption('Google', 'http://www.google.co.il/search', 'q', 'sitesearch', 'he.wikipedia.org'));
selectBox.appendChild(createOption('Yahoo', 'http://search.yahoo.com/search', 'p', 'vs', 'he.wikipedia.org'));
selectBox.appendChild(createOption('Bing', 'http://www.bing.com/search', 'q', 'q1', 'site:http://he.wikipedia.org'));
selectBox.appendChild(createOption('Wikiwix', 'http://www.wikiwix.com/', 'action', 'lang', 'he'));
selectBox.appendChild(createOption('מורפיקס', 'http://www.morfix.co.il', 'q', '', ''));
searchBox.style.marginRight = '0';
if (advSearchText.parentNode) {
advSearchText.parentNode.insertBefore(selectBox, advSearchText);
}
});