Avatar billede Slettet bruger
16. juni 2010 - 14:55 Der er 4 kommentarer og
2 løsninger

Gøre brugeren opmærksom

Hej

Jeg har en side hvorpå der er en del Ajax som opdaterer sig selv en gang imellem. Og så kan der godt være nye informationer til brugeren når dette gøres. Hvis nu brugeren i mellemtiden er i en anden fane eller et andet vindue så ser brugeren ikke opdateringerne med det samme. Kan det lade sig gøre i Javascript at lave det sådan at fanen "blinker" i browseren eller at vinduet "blinker" i proceslinjen hvis der er nye opdateringer?

Du ved "blinker" på samme måde, som hvis der fx. kommer en alert-boks når man ikke har pågældende fane eller vindue i fokus...

Jeg har prøver med window.focus() og et par andre også - dog uden held!

Kan man overhovedet sådan noget? Og hvis man kan, hvordan skal scriptet så se ud?

\Dan
Avatar billede Slettet bruger
16. juni 2010 - 15:07 #1
Du kan ændre vinduets "title" - det vil også ses på fanerne/task-baren.

F.eks. et lille setTimeout()-loop som ændrer på titlen hvert ½ sekund i 5-10 sekunder...
Avatar billede intenz Novice
16. juni 2010 - 15:47 #2
Avatar billede Slettet bruger
16. juni 2010 - 15:55 #3
Måtte liiige se om jeg faktisk havde ret : )
- jo, den er god nok:


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html><head><meta http-equiv="Content-type" content="text/html;charset=UTF-8">

<title>Mit Website</title>
<script>

var originalTitle
var notifyTitle
var notifyTimer
var notifyHandle = null
function notify(msg)
    {
    if (notifyHandle == null)
        {
        originalTitle = document.title
        notifyTitle = msg
        notifyTimer = 20
        notifyHandle = setInterval("doNotify()",500)
        }
    else
        notifyTitle = msg
    }
function doNotify()
    {
    if (--notifyTimer <= 0)
        {
        document.title = originalTitle
        clearInterval( notifyHandle )
        notifyHandle = null
        }
    else
        {
        if (document.title[0] == "-")
            document.title = "### "+notifyTitle+" ###"
        else
            document.title = "- - - -  "+notifyTitle+"  - - - -"
        }
    }
</script></head><body>

<a href="java script:notify('Se mig, jeg er ny!')">Notify</a>

</body></html>
Avatar billede Slettet bruger
16. juni 2010 - 16:10 #4
Jamen de eksempler kan jo ikke mærke forskel på om siden er i focus eller ej. Den blinker jo med titlen ligegyldigt om siden er i focus eller ej - det gør den i hvert fald på min skærm med IE8...!

Egentlig vil jeg helst ikke have titlen ændret!!! Hvis nu for eksempel man har en side man har minimeret eller som er på en fane som man ikke ser på lige nu - og at der på siden kommer en Alert-boks så alarmerer browseren jo... Og det er det jeg vil - bare UDEN nogen alert-boks...

Prøv at åbne et nyt vindue og så gå ind på denne URL: http://sancti.dk/test.asp

Så skal du minimere siden igen inden 2 sekunder... Så skulle Windows gerne markere at her er sket noget nyt. Det er det jeg gerne vil bare uden nogen alert-boks...

T4NK3R:
Hvis dit script skal virke, skal dette vel lige rettes...:
<script> - til - <script type="text/javascript">
- og -
<a href="java script:notify('Se mig, jeg er ny!')">Notify</a> - til - <a href="java script:notify('Se mig, jeg er ny!');">Notify</a>

- men det er som sagt ikke helt sådan noget jeg er ude efter...

\Dan
Avatar billede intenz Novice
16. juni 2010 - 18:33 #5
Jeg vil ikke tro du kan få den til at blinke uden at lave en alert, hvilket nok også er en god ting da det formegentlig ville misbrugt af alverdens hjemmesider og være meget irriterende.

At skifte titlen er den måde det normalt løses på, at den så kun bør den når siden ikke er i focus kan løses med javascripts egne events.
http://www.thefutureoftheweb.com/blog/detect-browser-window-focus

Du kan finde en diskussion af dit eget problem på:
http://stackoverflow.com/questions/37122/make-browser-window-blink-in-task-bar
Avatar billede Slettet bruger
18. juni 2010 - 01:30 #6
ok... Jeg giver op så - og finder mig i at dette ikke kan lade sig gøre.. Men tak for hjælpen begge to. Og her er point...

\Dan
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
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

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