Ich frage mich, ob es möglich ist, jQuery innerhalb Opera User JavaScript zu laden, damit ich jQuery-Funktionalität darin verwenden kann, auch auf Seiten, die jQuery derzeit nicht verwenden.Verwenden von jQuery in Opera Benutzer JavaScript
Antwort
Nun, es wäre sicherlich möglich, wenn Sie die ganze Menge von jQuery in Ihre UserJS-Datei einfügen oder vielleicht eine separate UserJS-Datei für alle Seiten mit der jQuery-Bibliothek erstellen. Es besteht jedoch die Möglichkeit, dass Konflikte mit Seiten auftreten, die jQuery verwenden.
Je nach Ihren Anforderungen könnten Sie vielleicht Ihr eigenes Mini-Framework erstellen? Zum Beispiel einiger einfachen Funktionen Elemente nach Tag/Klasse/id greifen:
function $id(id) {
return document.getElementById(id);
}
Hinweis: Sie eine bessere Antwort auf bei Opera's forums bekommen können.
Nur der Vollständigkeit halber:
Ich benutze es regelmäßig mit meinem UserJS. Kopieren Sie einfach Ihre jquery.js in Ihren userJS-Ordner.
Option 1:
, damit er nicht mit den verfügbaren jquery Konflikt, verwenden Sie die Option noConflict im jqueryfile und Associate jQuery mit mit Ihrem eigenen Kennung (jQueryMyIdentifier = jQuery; jQuery = null;).
Check-out, wie man zählt ein Remote-js mit javascript: Ihr JS-Code kann mit
(function($) {
// normal jquery js based on, jQueryMyIdentifier
$('#bla').x();
})(jQueryMyIdentifier);
Option 2 gewickelt werden. implementieren Sie die Zeile in Ihre JS.
include "http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"
oder gleich.
Ich habe gerade einen Opera userJS geschrieben, den ich von einer Google Chrome Erweiterung umgewandelt habe, wo jQuery einfach geladen werden konnte, aber hier in Opera musste ich eine andere Lösung verwenden, und ich wollte minimale Änderungen in meinem Code vornehmen.
Ich füge einfach eine neue Skript-Tag im Header des Dokuments mit einer funktionierenden jQuery-Quelle. Es wird heruntergeladen, bevor DOM bereit ist.
Das ist meine Arbeitslösung, hoffe das hilft!
// ==UserScript==
// @name This is the name of my userJS
// @description That's the description of my userJS
// @include http://blahblah.hu/*
// @include http://*.blahblah.hu/*
// @match http://blahblah.hu/*
// @match http://*.blahblah.hu/*
// @version 1.0
// ==/UserScript==
(function() {
// include jQuery
var headID = document.getElementsByTagName("head")[0];
var newScript = document.createElement('script');
newScript.type = 'text/javascript';
newScript.id = 'myjQuery';
newScript.src = 'http://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js';
headID.appendChild(newScript);
window.addEventListener('load', function (e) {
// you can write your jQuery code now!
$('#yourElementId').css('background-color', 'yellow');
// further jQuery codes
// ...
}, false);
})();
- 1. Javascript Opera + Safari Ausgabe
- 2. Jquery get schlägt in Opera/IE
- 3. Javascript: Verwenden von XPath in jQuery
- 4. Debug Javascript in der Opera Mini
- 5. Mimisches Fenster. onerror in Opera mit Javascript
- 6. <optgroup> in Opera mit jQuery
- 7. Opera Problem mit Javascript beim Senden
- 8. Ungleich Notation in Javascript in jQuery verwenden
- 9. onbeforeunload in Opera
- 10. Verwenden von Url.Action in JavaScript
- 11. Verwenden von jQuery in Tampermonkey
- 12. wie der Opera Browser mit Javascript
- 13. Verwenden von Javascript in Excel
- 14. Opera Mini Browser Erkennung mit Javascript
- 15. Warum funktioniert das Jquery Ajax nicht in Opera und Safari?
- 16. Opera Mini User-Agent Zeichenfolge enthält keine 'Opera Mini'
- 17. Verwenden von jQuery-Anweisungen in normalen JavaScript-Funktionen
- 18. Verwenden von regulären Ausdrücken (regex) markierten Text in jQuery/JavaScript
- 19. Gibt es eine Möglichkeit, Dateien lokal mit Opera-Benutzer-Javascript zu speichern?
- 20. Wie können Sie die JavaScript-Engine von Firefox offline verwenden?
- 21. JQuery val() funktioniert nicht für Textarea in Opera
- 22. Verwendung von Parameter in Ajax jQuery/Javascript
- 23. Verwenden von normalen JQuery in Phonegap-Projekt (mit JQuery Mobile)
- 24. Opera SDK Entwicklung
- 25. Text unten in Opera
- 26. HTML5-Datenelement in Opera
- 27. jQuery Einblenden/Ausblenden NUR in FF und Opera
- 28. jquery Verwenden von Bereichen in Switch-Fällen?
- 29. Verwenden von Daten in jQuery Flot-Anzeige
- 30. Verwenden von JQuery in onClick
Danke, es hat funktioniert. Ein noch sauberer Weg, dies zu tun, war es, jquery im userscripts-Ordner von opera zu speichern, damit es auf jeder Seite ausgeführt wird. Dann könnte ich einfach das normale $ (document) .ready (function() {in meiner eigenen Benutzer-Javascript-Datei verwenden. – RadiantHeart
Wenn Sie jQuery in Ihren Benutzer-JS-Ordner kopieren, denken Sie daran, dass Benutzerskripts in alphabetischer Reihenfolge laufen, also vielleicht etwas ähnliches 0-jquery.js hilft dabei, es vor allen anderen Skripten laufen zu lassen, die es brauchen (Zumindest wir (Opera) implementiert alphabetische Sortierung von Benutzer-Skript-Dateien damals, weiß nicht, ob wir explizite Tests dafür haben, also keine Ahnung, ob es funktioniert .. Vielleicht muss ich das beheben.) – hallvors
Guter Tipp, danke. – RadiantHeart