Avatar billede exp Juniormester
29. oktober 2012 - 11:02 Der er 2 kommentarer og
2 løsninger

jQuery: event hvis musen forlader viewport

Hejsa eksperter,

jeg er ikke specielt stærk til jQuery, derfor spørger jeg her:

Jeg vil gerne kunne tracke (via en event) hvis:
1. en brugers mus forlader viewporten
2. viewport kommer ud af fokus (fx hvis brugeren åbner et nyt program)

Kan det lade sig gøre? Og Hvordan?
Avatar billede The_Buzz Novice
29. oktober 2012 - 11:53 #1
http://api.jquery.com/hover/

Se første example

$(selector).mouseenter(handlerIn).mouseleave(handlerOut);

kan laves som f.eks.
<div id="viewport" style="border:2px solid black; background-color:red;width:500px;height:200px;">
<script>
    $("#viewport").hover(
  function () {

  },
  function () {
    alert('Du forlod viewport');
  }
);
</script>
Se preview: http://test.modified.dk/viewport.php
Avatar billede olebole Juniormester
29. oktober 2012 - 14:26 #2
<ole>

Det er nu ikke helt så let  =)

Du skal lægge handleren på BODY elementet, men det er ikke altid, browseren fanger en mouseout/mouseleave event på BODY'en, når handlingen foretages på kanten af viewporten.

Hvis 'virker somme tider' er godt nok, kan det lade sig gøre  =)

/mvh
</bole>
Avatar billede jokkejensen Novice
29. oktober 2012 - 20:56 #3
Ellers gemmer du selv viewpoints, og tjekke hvor musemarkøren befinder sig.
Avatar billede exp Juniormester
17. december 2012 - 22:55 #4
Undskyld, havde helt glemt dette spørgsmål.

@olebole:
"Virker somme tider" er helt acceptabelt. Det er ikke til en kritisk need-to-have funktion, men i høj grad kun nice-to-have.

@The_Buzz:
I det konkrete tilfælde er det body, det handler om. Mere konkret vil jeg åbne en modal-popup, hvis brugeren åbner en ny fane eller tab'er væk fra browseren.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester