1. Nachrichten
  2. Forum
    1. Unerledigte Themen
    2. Forenregeln
  3. Spenden
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. camp-firefox.de
  2. bugger

Beiträge von bugger

  • Skript für Tamper- Violentmonkey gesucht

    • bugger
    • 9. Juni 2025 um 10:33

    Teste bitte folgendes

    JavaScript
    // ==UserScript==
    // @name             Fritzbox Test
    // @description      Use you favorite favicon
    // @match            https://192.168.178.1/*
    // @match            http://192.168.178.1
    // @match            http://192.168.178.1/#/phone-books/book/259/entry/new
    // @version          1.0
    // ==/UserScript==
    waitForKeyElements(
     '#uiEntryname-input',
     test
    );
    
    function test() {
     document.getElementById('uiEntryname-input').value = 'Spam';
     document.getElementById('uiNumbernew1-input').focus();
     document.getElementById('uiEntryname-input').dispatchEvent(new Event('input', {bubbles: true}));
    }
    function waitForKeyElements(selector, callback, options) {
       const defaults = {
           waitOnce: true,    // If true (default), wait for a single matching element. If false, continue to scan for
                              //     new elements after the first match is found.
           allElements: true, // If true (default), the callback will be triggered repeatedly for every matching element.
                              //     If false, the callback will be triggered only for the first matching element.
           logTree: false     // If true, will log the full subtree to the console (useful for finding the actual element
                              //     added to the page, which may be a parent of the desired element). Default: false.
       };
       options = {...defaults, ...(options || {})};
       const elements = options.allElements ? document.querySelectorAll(selector) : [document.querySelector(selector)].filter(e => e != null);
       if (elements.length > 0) {
           // if the elements already exist, then call the function passed
           elements.forEach(element => callback(element));
           if (options.waitOnce) {
               return;
           }
       }
       let called = false;
       const observer = new MutationObserver(mutations => {
           mutations
               .filter(({addedNodes}) => addedNodes.length) // keep only newly added elements
               .forEach(({addedNodes}) => {
                   [...addedNodes]
                       .filter(element => {
                           if (element?.querySelector?.(selector)) {
                                   document.getElementById('uiEntryname-input').value = 'Spam';
                                   document.getElementById('uiEntryname-input').dispatchEvent(new Event('input', {bubbles: true}));
                                   document.getElementById('uiNumbernew1-input').focus();
                           }
                           //return true;
                       })
                       .filter(element => element?.matches?.(selector))
                       .forEach(element => {
                           if (options.allElements || !called) {
                               if (options.waitOnce) {
                                   observer.disconnect(); // here in case the callback modifies the elements
                               }
                               called = true; // cancel the callback only when actually matched
                               callback(element, observer);
                           }
                       });
               });
       });
       observer.observe(document.body, {
           childList: true,
           subtree: true
       });
    }
    Alles anzeigen
  • Skript für Tamper- Violentmonkey gesucht

    • bugger
    • 9. Juni 2025 um 10:22

    Kopiere mal bitte Zeile 15 & 16 und ersetze die Zeile 44 damit, also

    JavaScript
    test();

    mit

    JavaScript
     document.getElementById('uiEntryname-input').value = 'Spam';
     document.getElementById('uiNumbernew1-input').focus();

    ersetzen.

  • Skript für Tamper- Violentmonkey gesucht

    • bugger
    • 8. Juni 2025 um 20:45

    Folgendes funktioniert bei mir:

    JavaScript
    // ==UserScript==
    // @name             Fritzbox Test
    // @match            https://192.168.178.1/*
    // @version          1.0
    // ==/UserScript==
    waitForKeyElements(
     '#uiEntryname-input',
     test
    );
    
    function test() {
     document.getElementById('uiEntryname-input').value = 'Spam';
     document.getElementById('uiNumbernew1-input').focus();
    }
    function waitForKeyElements(selector, callback, options) {
       const defaults = {
           waitOnce: true,    // If true (default), wait for a single matching element. If false, continue to scan for
                              //     new elements after the first match is found.
           allElements: true, // If true (default), the callback will be triggered repeatedly for every matching element.
                              //     If false, the callback will be triggered only for the first matching element.
           logTree: false     // If true, will log the full subtree to the console (useful for finding the actual element
                              //     added to the page, which may be a parent of the desired element). Default: false.
       };
       options = {...defaults, ...(options || {})};
       const elements = options.allElements ? document.querySelectorAll(selector) : [document.querySelector(selector)].filter(e => e != null);
       if (elements.length > 0) {
           // if the elements already exist, then call the function passed
           elements.forEach(element => callback(element));
           if (options.waitOnce) {
               return;
           }
       }
       let called = false;
       const observer = new MutationObserver(mutations => {
           mutations
               .filter(({addedNodes}) => addedNodes.length) // keep only newly added elements
               .forEach(({addedNodes}) => {
                   [...addedNodes]
                       .filter(element => {
                           if (element?.querySelector?.(selector)) {
                                 test();
                           }
                           //return true;
                       })
                       .filter(element => element?.matches?.(selector))
                       .forEach(element => {
                           if (options.allElements || !called) {
                               if (options.waitOnce) {
                                   observer.disconnect(); // here in case the callback modifies the elements
                               }
                               called = true; // cancel the callback only when actually matched
                               callback(element, observer);
                           }
                       });
               });
       });
       observer.observe(document.body, {
           childList: true,
           subtree: true
       });
    }
    Alles anzeigen

    waitForKeyElements von

    Externer Inhalt gist.github.com
    Inhalte von externen Seiten werden ohne deine Zustimmung nicht automatisch geladen und angezeigt.
    Durch die Aktivierung der externen Inhalte erklärst du dich damit einverstanden, dass personenbezogene Daten an Drittplattformen übermittelt werden. Mehr Informationen dazu haben wir in unserer Datenschutzerklärung zur Verfügung gestellt.

  • Skript für Tamper- Violentmonkey gesucht

    • bugger
    • 8. Juni 2025 um 18:31

    Das Problem hier liegt daran das der Aufruf der Unterseite nicht über ein GET sondern über POST läuft. Das bekommt das userscript nicht mit. Die Funktion an sich funktioniert wenn ich das Script von Hand ausführe.

  • Skript für Tamper- Violentmonkey gesucht

    • bugger
    • 7. Juni 2025 um 20:13

    Probier mal

    JavaScript
    document.getElementById('uiEntryname-input').value = 'Spam';
    document.getElementById('uiNumbernew1-input').focus();
  • Div. Skripte funktionieren im aktuellem Nightly nicht mehr

    • bugger
    • 20. Januar 2025 um 18:01

    Ungetestet:

    JavaScript
    toolbaritem.addEventListener('click', event => {
        if (event.button === 0) { 
            FullZoom.enlarge(); 
        } else if (event.button === 1) { 
            FullZoom.reset(); 
        } else if (event.button === 2) { 
            FullZoom.reduce(); 
        }
    });
    
    toolbaritem.addEventListener('wheel', event => {
        event.preventDefault();
        if (event.deltaY < 0) { 
            FullZoom.enlarge(); 
        } else { 
            FullZoom.reduce(); 
        }
    });
    Alles anzeigen
  • Welchen Selektor bei Screenshot für das untere helle Feld, einschließlich der Button

    • bugger
    • 19. September 2024 um 14:05

    Über "Werkzeuge für Web-Entwickler" lässt sich das auch nicht finden.

    Über "Browser-Werkzeuge" allerdings schon. Einfach oben in der Suchleiste nach "Herunterladen" suchen, sollte dann zu finden sein.

  • Fehlerhafte Schrift auf Facebook

    • bugger
    • 28. Januar 2024 um 10:57

    Entferne ?locale=th_TH aus deiner URL.

  • Verhalten vom Mausrad auf der Tabbar änderbar?

    • bugger
    • 1. November 2023 um 14:09

    Macht genau das was es soll.

    Das einzige was damit leider nicht mehr geht, ist die Scroll-Animation.

    Edit:

    Mit scrollByIndex(index, false) gehts auch inklusive Animation!

    JavaScript
    (function() {
    
    
    if (!window.gBrowser)
    return;
    
    
    // ---- UserSetting ----
    let nTabScrollNumber = 5; // Anzahl der Tabs, um welche mit Mausrad gescrollt wird.
    let bTabScrollDirReverse = false; // Scrollrichtung des Mausrades umdrehen | [false] ist Standard.
    let bTabScrollCtrlKey = false; // [false] Scroll-Anpassungen werden immer ausgeführt.
    // [true] Scroll-Anpassungen werden nur ausgeführt, wenn gleichzeitig CTRL-Taste gedrückt wird.
    // ---- UserSetting ----
    
    
    
    
    let tabsArrowScrollbox = document.getElementById('tabbrowser-arrowscrollbox');
    let tabsScrollbox = document.getElementById('tabbrowser-arrowscrollbox').scrollbox;
    
    
    // Wheel-Event:
    tabsScrollbox.addEventListener("wheel", function(event)
    {
    if( (bTabScrollCtrlKey && event.ctrlKey) || !bTabScrollCtrlKey ) {
    
    
    event.preventDefault();
    event.stopPropagation();
    
    
    let dir = (bTabScrollDirReverse ? 1 : -1) * Math.sign(event.deltaY);
    
    
    if(dir == 1)
    tabsArrowScrollbox.scrollByIndex((-1)*nTabScrollNumber,false);
    else
    tabsArrowScrollbox.scrollByIndex(nTabScrollNumber,false);
    
    
    //console.log("scroll-Dir: " + dir + " " + event.deltaY );
    }
    
    
    }, false);
    })();
    Alles anzeigen
  • Verhalten vom Mausrad auf der Tabbar änderbar?

    • bugger
    • 1. November 2023 um 13:34

    Ok, danke!

    Ich hatte es absichtlich in Anpassungen gepostet, in der Hoffnung das man mit einem .uc.js die Koordinaten der Maus auslesen könnte. Und wenn die Maus über der Tableiste ist mit den mousewheel Einstellungen in about:config das verhalten hätte ändern können.

    Gibt es irgendwo verständliche Information was mousewheel.default.delta_multiplier_z macht?

    Ändere ich den Wert auf unter 100 bleibt das Scrollvehalten überall gleich (soweit ich feststellen konnte), bis auf die Tableiste und die Liste im AllTabButton , also im Prinzip das was ich gesucht habe.

    Bin mir nur nicht sicher ob ich mir damit woanders noch Probleme mit verursache.

  • Verhalten vom Mausrad auf der Tabbar änderbar?

    • bugger
    • 1. November 2023 um 10:20

    Hallo,

    ist es möglich die Scrollgeschwindigkeit des Mausrads auf der Tableiste, und nur auf der Tableiste, zu ändern?

    Systemeinstellung sind 5 Zeilen je Drehbewegung.

    Aktuell scrollt er 10 Tabs, bzw. wenn das Fenster kleiner ist und weniger als 10 Tabs angezeigt werden, scrollt er von x angezeigten Tabs x-1 Tabs weiter.

    Gruß

  • Funktion in Config.js funktioniert nicht mit Firefox 115.0 ESR

    • bugger
    • 30. Juni 2023 um 21:41

    Aus OS.File.makeDir(srcPath, destPath); wird IOUtils.makeDirectory(srcPath, destPath); und aus

    OS.File.remove(path, { ignoreAbsent: true }); wird IOUtils.remove(path); und aus

    OS.File.copy(srcPath, destPath); wird IOUtils.copy(srcPath, destPath);

    IOUtils Migration Guide — Firefox Source Docs documentation

  • Suchmaschinen bearbeiten?

    • bugger
    • 1. Januar 2019 um 14:28

    Da habe ich wohl ein Zeichen zu viel kopiert...
    Aber da wir schon im Thema sind, unter Firefox 64.0 ist es nicht mehr möglich in der Browser-Konsole mittels

    Code
    Services.search.addEngine("file:///pfad/zu/opensearch.xml", null, null, false);


    Suchmaschienen hinzuzufügen. Es kommt die Meldung

    Code
    [Exception... "Could not convert JavaScript argument arg 3 [nsIBrowserSearchService.addEngine]"  nsresult: "0x80570009 (NS_ERROR_XPC_BAD_CONVERT_JS)"  location: "JS frame :: debugger eval code :: <TOP_LEVEL> :: line 1"  data: no]


    Hat sich der Syntax geändert, oder ist das lokale hinzufügen deaktiviert worden?

  • Suchmaschinen bearbeiten?

    • bugger
    • 1. Januar 2019 um 11:52

    Wenn man nach den Kommentaren im Source Code geht sollte es so aussehen

    Code
    ?q={searchTerms}&categories=general&language=de-DE&safesearch=2
  • Der Downloadordner im firefox

    • bugger
    • 1. Januar 2019 um 10:41

    Der Speicherort von Firefox wird in der prefs.js im Profilorder unter dem Eintrag

    Code
    user_pref("browser.download.dir", "D:\\Downloads\\_Sorted");

    abgelegt.
    Änderungen sollten aber in der selbst zu erstellenden Datei user.js gemacht werden.

  • Oberflächenanpassung

    • bugger
    • 13. Juni 2018 um 20:22

    Interessant, ist mir bisher noch nie in den Enwicklerwerkzeugen aufgefallen.
    Aber auch wenn, bezweifle ich das als Ansatz erkannt zu haben.
    Wieder was gelernt :)

  • Oberflächenanpassung

    • bugger
    • 13. Juni 2018 um 19:55

    Das ist ja noch eleganter :) Vielen Dank dafür!
    Kann man diesen "hbox > image" Aufbau irgendwo in den Entwicklerwerkzeugen finden?
    Oder wie bist du zu diesem Code gekommen?

  • Oberflächenanpassung

    • bugger
    • 13. Juni 2018 um 16:02

    Knapp daneben, aber doch vorbei. Erst in Kombination mit setTimeout mit sagenhaften 5ms funktioniert es.

    Code
    window.addEventListener('contextmenu', function (e) {
      setTimeout(function() {
        let element = document.getElementById( '_02450914-cdd9-410f-b1da-db004e18c671_-menuitem-_s3sg_context_popup' );
        if ( typeof( element ) != 'undefined' && element != null ) {
          if ( element.hasAttribute( 'image' ) ) {
            element.removeAttribute( 'image' );
          }
        }
      }, 5);
    });

    Vielen Dank EffPeh für deine Hilfe!

  • Oberflächenanpassung

    • bugger
    • 13. Juni 2018 um 15:44

    Ich glaube das ist eine aussichtslose sache, das Element wird wohl nur erzeugt wenn das Context Menu geöffnet wird. Schließt man das Context Menu, wird das Element auch wieder "zerstört". Ein erneutes anzeigen des Context Menu erzeugt wieder das Element mit dem original Icon.
    Wenn es nicht einen weg gibt den JS Code beim erzeugen des Context Menu zu starten, bliebe nur den Code alle paar ms auszuführen.
    Das erscheint mit jedoch nicht wirklich vernünftig.

  • Oberflächenanpassung

    • bugger
    • 13. Juni 2018 um 15:03

    Da kommt leider auch der selbe Fehler

    Code
    TypeError: element is null[Weitere Informationen] screengrab.uc.js:5:1


    Ist nur seltsam das der Eintrag über CSS ansprechbar ist, aber über JS nicht.

Unterstütze uns!

Jährlich (2025)

91,4 %

91,4% (594,17 von 650 EUR)

Jetzt spenden
  1. Kontakt
  2. Datenschutz
  3. Impressum
Community-Software: WoltLab Suite™
Mastodon