Problém s Jquery podle videa z WebExpa 2009

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Johnny
Člen | 24
+
0
-

Ahoj,
dělám aplikace podle návodu z WebExpa 2009 (http://vimeo.com/14983309) a zlobí mi Jquery. Mám zde kód přesně tak, jak je v návodu:

<script>
$('#cart').droppable({
	'accept': '.fruit',
	hoverClass: 'cart-active',
	drop: function(event,id) {
		$.get({link add!}, {'fruit' : ui.draggable.attr('id')});
	}
});
</script>

Ale pokaždé, když obrázek přetáhnu tam, kam mám, firebug mi napíše:
ui is not defined – [Break on this error] $.get(„\/eshop\/demo\/?do=add“, {‚fruit‘ : ui.draggable.attr(‚id‘)});
Je nějaký problém s ui? Jak to mohu vyřešit? (mám jquery jquery-1.4.3.min.js a jquery-ui-1.8.6.custom.min.js)
Děkuji za pomoc

jansfabik
Člen | 193
+
0
-

opravdu je tam jquery ui správně nalinkované?

zkus se podívat sem: https://examples.nette.org/webexpo2009/

Editoval jansfabik (6. 11. 2010 22:26)

Johnny
Člen | 24
+
0
-

Ano, v hlavičce mám toto:
<script type=„text/javascript“ src=„{$basePath}/js/jquery-1.4.3.min.js“></script>
<script type=„text/javascript“ src=„{$basePath}/js/jquery-ui-1.8.6.custom.min.js“></script>
a oba soubory tam opravdu jsou a načtou se.
Pozor, jde mi přetahování objektů a ajaxem se i odešle nová poloha obrázky (čili soubory jsou nahrané správně), ale musel jsem to upravit (také nefungovalo ui – takže jsem použil $(this).position().left). Možná to pomůže odhalit chybu. Nyní tedy vypadá script pro odesílání polohy takto:

<script>
$('.fruit').draggable({
	'revert': 'invalid',
	helper: 'clone',
	opacity: 0.7,
	'stop': function(event,ui) {
		$.get({link move!},{'fruit' : $(this).attr('id'),'x' : $(this).position().left , 'y' : $(this).position().top});
	}
});
</script>

bohužel upravit script pro přidávání do košíku se mi podobně nepovedlo

Johnny
Člen | 24
+
0
-

Ještě bych chtěl dodat, že na serveru jsou nahrány jen soubory jquery jquery-1.4.3.min.js a jquery-ui-1.8.6.custom.min.js. Nemá být v té složce /js/ ještě nějaká podsložka s dalšími js soubory?

Lopata
Člen | 139
+
0
-

Tak zaprvé: jQuery si nehostuj sám, ale použij Google. Viz http://scriptsrc.net/

Zadruhé to

<script>
{'fruit' ...
</script>

nemusí být v uvozovkách, stačí když je za tím { mezera.
A jádro problému: v prvním příkladu si druhý parametr callbacku pojmenováváš id místo ui. Chudák javacript si pak neví rady…

Johnny
Člen | 24
+
0
-

Jednoduše děkuji za skvělé rady :)