Kom ihåg mig?

jQuery sortable

 
 
Ämnesverktyg Visningsalternativ
Gammal 2010-08-20, 22:41 #11
robincox robincox är inte uppkopplad
Flitig postare
 
Reg.datum: Aug 2008
Inlägg: 301
robincox robincox är inte uppkopplad
Flitig postare
 
Reg.datum: Aug 2008
Inlägg: 301
Citat:
Ursprungligen postat av rhdf Visa inlägg
du får peta dit nånting före länken som kan fungera som "handle"
tror det finns rätt bra demonstrerat här: http://jqueryui.com/demos/sortable/#option-handle

på mylinkstart.se så använde jag en bild (länkens favicon) som handle
typ såhär
<img src="http://www.google.com/s2/favicons?domain=www.facebook.com" alt="" class="favicon" />
<a href="http://www.facebook.com" title="Facebook" rel="nofollow">Facebook</a>

och
$("ul.linklist").sortable({ connectWith: 'ul', handle: '.favicon' });
Jo, jag har varit inne på det men problemet är att handlern tar plats. Men det är sant, fixar jag det inte på något annat sätt så blir det en handler. Tack för länken, den är en viktig plan b
robincox är inte uppkopplad   Svara med citatSvara med citat
Gammal 2010-08-21, 13:29 #12
dAEks avatar
dAEk dAEk är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Dec 2006
Inlägg: 678
dAEk dAEk är inte uppkopplad
Mycket flitig postare
dAEks avatar
 
Reg.datum: Dec 2006
Inlägg: 678
Citat:
Ursprungligen postat av robincox Visa inlägg
Det exemplet visar hur man förhindrar sorteringsfunktionen, det är inte vad jag är ute efter. Jag vill att href fortfarande ska funka om man släpper musknappen ovanför länken som vanligt "mouse up", men om man däremot drar länken till en annan position i listan så ska inte href aktiveras. Hoppas det var en någorlunda bra förklaring.
Då tolkade jag dig rätt så fel från början, sorry.

För mig funkar följande kod i Chrome men inte i några andra webbläsare. Det som inte funkar är klickanropet. Flödet verkar stämma då det loggas rätt saker men click-triggern vill inte ge med sig. Uppenbarligen har jag missat något men jag kan inte se vad det skulle vara.

Här har du en start iaf. Det är ihophaffsat lite snabbt så det kan finnas buggar och optimeringsbehov.

Kod:
$(document).ready(function() {

	if (window.console === undefined) {
		$("body").append('<div id="logger"></div>');
		window.console = {
			log : function(message) {
				$("#logger").append(message + "<br>");
			}
		};
	}

	$("#sortable a").mousedown(function() {
		$(this).data("doClick", true);
		console.log(this.href);
	});

	$("#sortable").sortable({ 
		tolerance: 'pointer', 
		start: function(event, ui) {
			$(ui.item).data("indexBefore", $(ui.item).parent().children().index($(ui.item)));
		},
		stop: function(event, ui) {
			if ($(ui.item).find("a").data("doClick") === true) {
			
				console.log("index changed?");
				
				var indexBefore = $(ui.item).data("indexBefore");
				var currentIndex = $(ui.item).parent().children().index($(ui.item));
				
				if (indexBefore === currentIndex) {
					console.log("index was not changed, trigger click");
					console.log($(ui.item).find("a").attr("href"));
					
					$(ui.item).find("a").trigger("click");
				} else {
					console.log("index changed (before: " + indexBefore +", after: " + currentIndex +")");
				}
			}
		}
	});
});
__________________
David Shamloo-Ekblad

Utdelningsinriktad aktieinvesterare. Systemutvecklare på Creuna till vardags.
Linkedin, Twitter, Last.fm
dAEk är inte uppkopplad   Svara med citatSvara med citat
Gammal 2010-08-24, 19:45 #13
dAEks avatar
dAEk dAEk är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Dec 2006
Inlägg: 678
dAEk dAEk är inte uppkopplad
Mycket flitig postare
dAEks avatar
 
Reg.datum: Dec 2006
Inlägg: 678
Jag kommer nog inte kunna pilla nåt med det här förens i helgen och det är bara kanske.

Är det inte viktigt att det faktiskt körs ett click-event skulle det funka att ange location.href istället:

Kod:
location.href = $(ui.item).find("a").attr("href");
__________________
David Shamloo-Ekblad

Utdelningsinriktad aktieinvesterare. Systemutvecklare på Creuna till vardags.
Linkedin, Twitter, Last.fm
dAEk är inte uppkopplad   Svara med citatSvara med citat
Gammal 2010-08-30, 12:56 #14
robincox robincox är inte uppkopplad
Flitig postare
 
Reg.datum: Aug 2008
Inlägg: 301
robincox robincox är inte uppkopplad
Flitig postare
 
Reg.datum: Aug 2008
Inlägg: 301
Lightbulb Det gick enkelt!

Det gick väldigt enkelt. Länkar som man kan sortera med sortable länkar vid mouse up men är sorterbara om man klickar, håller nere musknappen och drar i dem, då länkar de inte. Så summan av kardemumman är man behöver inte skriva en enda rad med extra kod
__________________
http://designbank.se - webbdesign och hemsidor
robincox är inte uppkopplad   Svara med citatSvara med citat
Gammal 2010-08-30, 21:13 #15
dAEks avatar
dAEk dAEk är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Dec 2006
Inlägg: 678
dAEk dAEk är inte uppkopplad
Mycket flitig postare
dAEks avatar
 
Reg.datum: Dec 2006
Inlägg: 678
Citat:
Ursprungligen postat av robincox Visa inlägg
Det gick väldigt enkelt. Länkar som man kan sortera med sortable länkar vid mouse up men är sorterbara om man klickar, håller nere musknappen och drar i dem, då länkar de inte. Så summan av kardemumman är man behöver inte skriva en enda rad med extra kod
Bra att det löste sig men det varr inte direkt glasklart att det var så du ville att det skulle fungera om man läser inläggen. Men som sagt, skönt att det löste sig iaf.
__________________
David Shamloo-Ekblad

Utdelningsinriktad aktieinvesterare. Systemutvecklare på Creuna till vardags.
Linkedin, Twitter, Last.fm
dAEk är inte uppkopplad   Svara med citatSvara med citat
Svara

Taggar
drag, drop, javascript, jquery, sortable


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 
Ämnesverktyg
Visningsalternativ

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 22:51.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017