Kom ihåg mig?
Home Menu

Menu


javascript-problem

Ämnesverktyg Visningsalternativ
Oläst 2006-03-29, 21:54 #1
Kristallrummets avatar
Kristallrummet Kristallrummet är inte uppkopplad
Nykomling
 
Reg.datum: Feb 2005
Inlägg: 29
Kristallrummet Kristallrummet är inte uppkopplad
Nykomling
Kristallrummets avatar
 
Reg.datum: Feb 2005
Inlägg: 29
Har ett problem som jag skulle behöva hjälp med. När kunderna har lagt en produkt i kundvagnen använder jag koden nedan för Tillbaka-knappen, detta gör att kunden hamnar högst upp på sidan som han var på tidigare istället för att komma tillbaka i den höjd han har scrollat ner tidigare. Skulle kunden använda webbläsarens Tillbaka-knapp kommer kunden i rätt höjd på sidan och ser produkterna bredvid den han klickade på. Dock fungerar inte webbläsarens Tillbaka-knapp om kunden väljer att lägga produkten i kundvagnen. Därför vill jag att kunderna använder "min" Tillbaka-knapp, dock har kunder påpekat att det är jobbigt att hamna högst upp på sidan hela tiden.

Hoppas att ni förstår mitt problem och att någon kan hjälpa mig.

Kan jag förändra mitt javascript så att det kommer ihåg i vilken höjd kunde var på sidan han kom ifrån?

Kod:
function goBack()
{
 ref = document['re'+'ferrer'];
 if (ref && ref != window.parent.document.location) {
  document.location = ref;
 }
 else {
  window.history.go(-1);
 }
Kristallrummet är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-03-29, 23:35 #2
zorans avatar
zoran zoran är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Jun 2004
Inlägg: 598
zoran zoran är inte uppkopplad
Mycket flitig postare
zorans avatar
 
Reg.datum: Jun 2004
Inlägg: 598
Citat:
Originally posted by Kristallrummet@Mar 29 2006, 21:54
Har ett problem som jag skulle behöva hjälp med. När kunderna har lagt en produkt i kundvagnen använder jag koden nedan för Tillbaka-knappen, detta gör att kunden hamnar högst upp på sidan som han var på tidigare istället för att komma tillbaka i den höjd han har scrollat ner tidigare. Skulle kunden använda webbläsarens Tillbaka-knapp kommer kunden i rätt höjd på sidan och ser produkterna bredvid den han klickade på. Dock fungerar inte webbläsarens Tillbaka-knapp om kunden väljer att lägga produkten i kundvagnen. Därför vill jag att kunderna använder "min" Tillbaka-knapp, dock har kunder påpekat att det är jobbigt att hamna högst upp på sidan hela tiden.

Hoppas att ni förstår mitt problem och att någon kan hjälpa mig.

Kan jag förändra mitt javascript så att det kommer ihåg i vilken höjd kunde var på sidan han kom ifrån?

Kod:
function goBack()
{
 ref = document['re'+'ferrer'];
 if (ref && ref != window.parent.document.location) {
  document.location = ref;
 }
 else {
  window.history.go(-1);
 }
Jag själv, personligen, tycker att om "webbläsarens tillbaka knapp fungerar inte" är i självaste verket "Jag har tagit sönder webbläsarens tillbaka knapp".

En förklaring. Att kunna navigera en site är viktigt för en kund. För att kunden alltid ska veta var den finns, hur saker fungerar, är det viktigt att de inlärda mönstren alltid fungerar. Dvs, en kund vet alltid att klick på pilen bakåt, ALLTID tar en bakåt. Ifall du kodat din sida att den funktionaliteten inte finns längre, är det inte bra. Det skapar förvirring. Sammanfattat, ge fan i att ta sönder bakåtknappen.

Ja, hur ska du då göra "rätt", utan att ta sönder den?

Jag kan inte svara riktigt på din fråga eftersom jag inte känner till ditt system och hur det är byggt.

I MITT system, så gör jag följande förfarande när jag vill lägga en produkt i varukorgen:

"lägg till"-knappen är en vanlig länk, som pekar exempelvis på /basket/?action=add&pid=23&count=1&return=<produktsidan jag är på nu>
När användaren klickar på den, skickas en GET request till /basket/ som läser url-raden.
När den lagt till produkten i varukorgen, tittar den på return-parametern. Sedan skickar den en 302, med Location: <produktsidan jag är på>.
Det som händer är att användaren automatiskt redirectas tillbaka till samma sida den kom ifrån, och notifieras att produkten är i varukorgen (varukorgen blinkar till eller gör något annat).

Klickar användaren då på bakåtknappen, så kommer det hända det som den förväntas, dvs gå tillbaka ett steg till föregående sida. (man kan säga att 302 redirects hamnar inte i history-listan).

Nästa steg är ju att använda ajax för att lägga produkten i varukorgen, vilket inte heller tar sönder bakåtknappen.
zoran är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-03-29, 23:58 #3
Kristallrummets avatar
Kristallrummet Kristallrummet är inte uppkopplad
Nykomling
 
Reg.datum: Feb 2005
Inlägg: 29
Kristallrummet Kristallrummet är inte uppkopplad
Nykomling
Kristallrummets avatar
 
Reg.datum: Feb 2005
Inlägg: 29
Jo, visst är det så att jag har tagit sönder webbläsarens tillbaka-knapp. Detta beror på min okunskap att lösa det på något annat sätt. Det är nog dags att jag tittar på en lösning där istället. Men om det är någon som har svar på min fråga så uppskattas det också.
Kristallrummet är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-03-30, 07:10 #4
zorans avatar
zoran zoran är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Jun 2004
Inlägg: 598
zoran zoran är inte uppkopplad
Mycket flitig postare
zorans avatar
 
Reg.datum: Jun 2004
Inlägg: 598
Citat:
Originally posted by Kristallrummet@Mar 29 2006, 23:58
Jo, visst är det så att jag har tagit sönder webbläsarens tillbaka-knapp. Detta beror på min okunskap att lösa det på något annat sätt. Det är nog dags att jag tittar på en lösning där istället. Men om det är någon som har svar på min fråga så uppskattas det också.
Mitt svar kommer ge dig lösning på ditt problem och det är lättare att implementera än den lösningen som du har tänkt dig.
zoran är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-03-30, 13:44 #5
bivald bivald är inte uppkopplad
Medlem
 
Reg.datum: Feb 2006
Inlägg: 207
bivald bivald är inte uppkopplad
Medlem
 
Reg.datum: Feb 2006
Inlägg: 207
Citat:
Originally posted by Kristallrummet@Mar 29 2006, 21:54
Nästa steg är ju att använda ajax för att lägga produkten i varukorgen, vilket inte heller tar sönder bakåtknappen.
Kom ihåg att inte alla webbläsare stödjer JS dock och att man bör kunna surfa på en sida utan javascript aktiverat. Kan man inte det kan t.ex. googlebotten slå slint...
bivald är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-03-30, 19:04 #6
zorans avatar
zoran zoran är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Jun 2004
Inlägg: 598
zoran zoran är inte uppkopplad
Mycket flitig postare
zorans avatar
 
Reg.datum: Jun 2004
Inlägg: 598
Citat:
Ursprungligen postat av bivald
Citat:
Ursprungligen postat av Kristallrummet
Nästa steg är ju att använda ajax för att lägga produkten i varukorgen, vilket inte heller tar sönder bakåtknappen.
Kom ihåg att inte alla webbläsare stödjer JS dock och att man bör kunna surfa på en sida utan javascript aktiverat. Kan man inte det kan t.ex. googlebotten slå slint...
Visst, men googlebotten behöver inte kunna lägga produkter i varukorgen. Gör man endast det med javascript/ajax så är det knappast någon fara. Sen är det också så att det är lätt att ha en fallback för klienter utan ajaxstöd.

Däremot skulle det aldrig falla mig in att använda renodlade javascriptmenyer.
zoran är inte uppkopplad   Svara med citatSvara med citat
Oläst 2006-03-30, 20:35 #7
Lindahl Lindahl är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Dec 2004
Inlägg: 854
Lindahl Lindahl är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Dec 2004
Inlägg: 854
Google kan inte posta vanliga formulär än så länge (som tur är). Kör med ett helt vanligt formulär som postar till editcart.pl (till skillnad från postning till cart.pl som du har i dagsläget). Sedan har jag själv gjort som så att varje gång editcart.pl laddas så laddas cart.pl om med javascript (parent.cart.location.reload(true). På detta sättet behåller bakåtknappen hela tiden sin funktionalitet.
Det blir då editcart.pl i ditt fall som innehåller kod för att lägga till objekt till kundvagnen, och cart.pl är ett ganska dumt script som bara visar vad som redan finns i kundvagnen.
Lindahl är inte uppkopplad   Svara med citatSvara med citat
Svara


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

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 05:05.

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