To All Такая просьба. Как сделать для Оперы 12.14 чтобы скрипт
open-in-background-with-long-press.js открывал ссылки по ЛКМ в фоновой вкладке? Я понимаю что щелчком колесика мыши они и так открываются в фоновой вкладке безо всяких скриптов, но хотелось чтобы и по ЛКМ тоже (так работает скрипт open-in-background.js для Оперы 9.64):[more=Подробнее]
// ==UserScript==
// @name Open in background with long press
// @author Lex1
// @version 1.3.12
// @description Open links in background window on long press.
// @ujs:documentation
http://lexi.ucoz.ru/index/0-5#userjs // @ujs:download
http://lexi.ucoz.ru/userjs/open-in-background-with-long-press.js // ==/UserScript==
(function(){
var delay = 500;
var timerId = 0;
var clear = function(){if(timerId){clearTimeout(timerId); timerId = 0}};
opera.addEventListener('BeforeEvent.mousedown', function(e){
var loc = window.location, evt = e.event, target = evt.target;
if(evt.button == 0 && !evt.ctrlKey && !evt.shiftKey && !evt.altKey){
timerId = setTimeout(function(){
var link = target.nodeName.toLowerCase() == 'a' ? target : target.selectSingleNode('ancestor-or-self::*[(local-name()="a" or local-name()="area") and @href]');
if(link && link.protocol.toLowerCase() != 'javascript:'){
evt.stopPropagation();
evt.preventDefault();
if(link.hash && link.href.replace(link.hash, '') == loc.href.replace(loc.hash, '')){
loc.hash = link.hash;
}
else{
if(window.atob){
window.open(link.href).blur();
document.addEventListener('click', function(ev){
if(ev.target == target){
ev.stopPropagation();
ev.preventDefault();
};
document.removeEventListener(ev.type, arguments.callee, true);
}, true);
}
else{
var mEv = document.createEvent('MouseEvents');
mEv.initMouseEvent('mousedown', false, false, window, 0, 0, 0, 0, 0, false, false, false, false, 1, null);
link.dispatchEvent(mEv);
mEv.initMouseEvent('mouseup', false, false, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
link.dispatchEvent(mEv);
}
}
}
}, delay);
}
}, false);
document.addEventListener('mouseup', clear, false);
document.addEventListener('mousemove', clear, false);
})();
[/more]