SEO-Software von Suchmaschinenoptimierung.de

JQuery zu Scriptaculous

(hier klicken, um zum Original Thread zu gelangen)
TrioxX
Aloah,

ich hab mal eine doofe Frage Freude Ich habe eine JQuery Funktion zum manipulieren eines Links. Funktioniert so weit auch gut.

Jetzt ist es so, dass ich diese Funktion gern in einem WBB3 nutzen würde. Dieses nutzt aber Protoculous und einige Funktionen sind nicht mit JQuery kompatibel, sodass es Fehler gibt, die ich liebend gern vermeiden würde.

Ich muss gestehen, dass die Funktion selbst recht einfach ist, ich aber von Scriptaculous und Prototype absolut keine Ahnung habe.

Hier mal die originale JQuery Version:

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
function Link(){
	$('.myclass).each(function(){
		var el = $(this)
		$.ajax({
			type: "GET",
			url: el.attr('href'),
			dataType: "xml",
			success: function(data){
				el.attr('href',$('link',data).text())
				el.addClass('q'+$('quality',data).attr('id'))
			}
		})
	})
}
$(document).ready(Link)


Hier passieren recht einfache Dinge. Die Funktion Link() wird über ein im Dokument vorhandenen Link aufgerufen, welcher die Klasse "myclass" hat.

Dann wird beim Mouseover mittels GET der entsprechende Link gecallt und aus dem dort liegenden XML Dokument wird der Wert "link" extrahiert und der Link auf der Seite entsprechend abgeändert.

Soviel dazu.

Mein Problem: Ich brauche die obrige Funktion für Protoculous. Hat jemand genug Ahnung, um mir dabei entsprechend behilflich zu sein? Ich möchte ehrlich sein... Bis ich mich da durch gelesen habe, vergehen sicherlich noch Wochen...

Ich habe der Einfachheit halber von XML auf einen simplen Output geändert, sodass die Ausgabe lediglich nurnoch die neue URL ist und keine komplette XML Datei, die erst auseinandergepflückt werden muss.

Wenn ich ganz blöde machen würde, würde ich solche Spielchen anfangen:

document.getElementById(myclass).href = Result;

Aber das ist nicht, wie ich es gerne hätte ^^

Also, um es kurz zu machen:

Ich habe eine Seite mit einem Link

code:
1:
<a href="wrapper.php?id=12345" class="myclass">12345</a>


Das obrige Script ruft nun mittels GET die wrapper.php mit den entsprechenden Variablen (also id) auf. Die wrapper.php gibt eien Link zurück. Der Link auf der Seite wird dann mittels onload event in den Rückgabewert geändert.

Ich hoffe, dass das Verständlich war ^^
derletztekick
Hi,

ich kenne kein Framework. Von daher würde ich auf SELF setzen und mir etwas eigenes für dieses kleine Problem überlegen...


Gruß Micha
moonsword
jquery kann sich von anderen frameworks abheben Zunge raus dann musst du halt nicht mit $ sondern mit jQuery drauf zugreifen...nur so als info
TrioxX
Naja, ich benutze ja kein JQuery Augenzwinkern Würde ich das tun, würde auch der obige Code funktionieren und tun, was ich will.

Mein Problem ist Scriptaculous bzw. Prototype und ich weiß, dass die Funktionen beispielsweise anders benannt sind, als in JQuery, was mir die Arbeit leider nicht erleichtert.

Mich macht dieses ganze WCF sowieso schon Banane genug... ^^
moonsword
ich bin davon ausgegangen, dass du beide frameworks parallel nutzts und dadurch sich ein paar sachen in die quere kommen...

zu scriptacoulo keine ahnung....ich bin mootools jünger gewesen und seit neustem auf jquery...
TrioxX
Das mit der Quere ist richtig. Ich würde den obigen Code nutzen, wenn Scriptacolus nicht meckern würde und den Dienst an anderer Stell verweigert ^^
moonsword
http://docs.jquery.com/Using_jQuery_with_Other_Libraries

dann leg ich dir das ans herz Zunge raus

ps.: irgendwie wiedersprichst du dich? ich meinte halt, dass du de quere machen kannst...jquery ist so cool, dass es ein noConflict hat...
das sag ich jetzt mal, dass es funktioniert (mit scriptacoulo nicht getestet, sollte aber trotzdem funktionieren) und naja...probier es aus, ob es was hilft...aber 2 frameworks nutzen ist auch nicht schön smile
TrioxX
Ich wiederspreche mich nicht. Du verstehst mich nur nicht großes Grinsen

Ich habe ein WBB3, welches komplett mit Scriptaculous arbeitet bzw. Protoculous (Prototype & Scriptaculous). Das hab ich mir nicht ausgesucht ^^

Mein Code, den ich einbinden will, ist aber in JQuery geschrieben und ich habe keine Ahnung, wie er in Scriptaculous aussehen muss, damit er kompatibel mit meinem genutzten Framework ist bzw. wie mein Code in Form von Protoculous auszusehen hat.

Denn einsetzen kann ich ihn, aber dann streiken einige vordefinierte Protoculous Funktionen.

Vielleicht war es ja nun verständlich Augenzwinkern Aber danke für den Link. Schaue ich mir mal an.

EDIT:

Danke, hat mir sehr geholfen smile Funktioniert jetzt alles konfliktfrei.
moonsword
du hast mich auch nicht verstanden Zunge raus

Zitat:
Naja, ich benutze ja kein JQuery Würde ich das tun, würde auch der obige Code funktionieren und tun, was ich will.

Mein Problem ist Scriptaculous bzw. Prototype und ich weiß, dass die Funktionen beispielsweise anders benannt sind, als in JQuery, was mir die Arbeit leider nicht erleichtert.

danach hatte ich verstanden, dass du jquery nicht nutzen willst, hatte ja da schon vorgeschlagen, dass es ein noConflict ähnliches gibt

dann wolltest du es plötzlich wieder verwenden Augenzwinkern

für mich war das ein wiedersprechen

dass alles "Conflict"-frei funktioniert, dazu ist noConflict auch gut...wie schön, dass es doch jquery gibt smile
TrioxX
Ging ohne noConflict:

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
<script type="text/javascript">
	//<![CDATA[
	jQuery(document).ready(function()
	{
		jQuery('.myclass').each(function()
		{
			var el = jQuery(this)
			jQuery.ajax(
			{
				type: "GET",
				url: el.attr('href'),
				dataType: "xml",
				success: function(data)
				{
					el.attr('href',jQuery('link',data).text())
					el.addClass('q'+jQuery('quality',data).attr('id'))
				}
			})
		})
	});
	//]]>
</script>
(hier klicken, um zum Original Thread zu gelangen)



Tipp: Ranking-Konzept.de - Das SEO-Forum (Forum rund um die Suchmaschinenoptimierung) der artaxo AG.
Das große Versicherungs ABC von Versicherung.de - mit allen Aspekten der Computerversicherungen!
Fan-Foren.de, die große Community mit Musikforum ist ab sofort online.