aber es überschreibt bei Linksklick auch meinen aktuellen Tab.
Bitte mal testen:
Das mit dem "timeout" gefällt mir nicht, aber mit "Load()" geht es hier nicht und "DOMContentLoaded" funktioniert meines Wissens auch nicht richtig!
JavaScript
(function() {
if (!window.gBrowser){
return;
}
let newWindow = null;
try {
CustomizableUI.createWidget({
id: 'link-button',
type: 'custom',
defaultArea: CustomizableUI.AREA_NAVBAR,
onBuild: function(aDocument) {
var currentProfileDirectory = Services.dirsvc.get("ProfD", Ci.nsIFile).path.replace(/\\/g, "/");
var toolbaritem = aDocument.createElementNS('http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul', 'toolbarbutton');
toolbaritem.onclick = event => onClick(event);
var props = {
id: 'link-button',
class: 'toolbarbutton-1 chromeclass-toolbar-additional',
removable: 'true',
label: 'Quicklink',
accesskey: '',
tooltiptext: 'Quicklink:\nForum - camp-firefox.de',
style: 'list-style-image: url("' + ("file:" + currentProfileDirectory + "/chrome/icons/icons8-rating-circled-48.png") + '");',
};
for (var p in props)
toolbaritem.setAttribute(p, props[p]);
return toolbaritem;
}
});
} catch(e) { };
function onClick(event)
{
if (event.button == 0)
{
let strTabOpen;
if( event.view == newWindow ) {
strTabOpen = "current";
}
else {
strTabOpen = "tab";
}
newWindow = null;
event.target.ownerGlobal.openTrustedLinkIn('https://www.tagesschau.de/',strTabOpen);
event.target.ownerGlobal.openTrustedLinkIn('https://www.zdf.de/nachrichten/',"tab");
event.target.ownerGlobal.openTrustedLinkIn('https://www.hessenschau.de/',"tab");
}
else if (event.button == 2)
{
newWindow = OpenBrowserWindow();
setTimeout(function() {
newWindow.document.getElementById('link-button').click();
}, 500);
}
}
}) ();
Alles anzeigen