[JS] Geluid 'muten' als venster niet ontop

Pagina: 1
Acties:

  • Hermarcel
  • Registratie: April 2003
  • Niet online
Ik heb een website met frames (jaja, ik weet het :) ) en een achtergrondgeluid. Het geluid is gedefinieerd met <BGSOUND> in het framesetdocument. Ik wil het geluid graag rustig laten wegebben als het venster niet meer ontop is en rustig laten aanzwellen wanneer de site weer ontop komt. JS-functies om het geluid af te laten zwakken en aan te laten zwellen zijn geen probleem, maar ik kan niet de juiste events vinden om de JS-functies aan te roepen. Events (op de <frameset>) die ik heb geprobeerd zijn: onActivate, onDeactivate, OnLoad, onUnload, onFocus en OnBlur.

Fired er een event wanneer een browser window niet langer ontop is? En een event zodra het window weer ontop komt?

  • faabman
  • Registratie: Januari 2001
  • Laatst online: 08-08-2024
lijkt me dat je op de pagina waar je frameset in staat een window.onblur / .onfocus kunt toepassen...

Op zoek naar een baan als Coldfusion webdeveloper? Mail me!


  • .oisyn
  • Registratie: September 2000
  • Laatst online: 00:13

.oisyn

Moderator Devschuur®

Demotivational Speaker

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • André
  • Registratie: Maart 2002
  • Laatst online: 18-05 16:30

André

Analytics dude

BGSOUND :r

Maar dit is zoals faabman zegt wel te doen met onblur en onfocus:

code:
1
window.onblur = function() { geluid.fadeaway() }

  • Hermarcel
  • Registratie: April 2003
  • Niet online
Sorry voor de foute forumkeuze :)
André schreef op 05 november 2004 @ 14:00:
BGSOUND :r

Maar dit is zoals faabman zegt wel te doen met onblur en onfocus:

code:
1
window.onBlur = function() { geluid.fadeaway() }
Tja, dit werkt dus niet (IE6) zoals verwacht. Bij het laden van de pagina wordt de onBlur-functie aangeroepen direct gevolgd door de onFocus-functie. Wat ik verder ook met het venster doe, de functies worden niet meer aangeroepen.

Is er een andere (misschien meer portabele) manier om te bereiken wat ik wil?

  • André
  • Registratie: Maart 2002
  • Laatst online: 18-05 16:30

André

Analytics dude

Hoofdletters weglaten:

code:
1
2
window.onfocus = function() { alert("focus"); }
window.onblur = function() { alert("blur"); }

  • Hermarcel
  • Registratie: April 2003
  • Niet online
Hoofdletters weglaten leidt tot scriptfouten.

Dit is wat ik nu heb (zit tussen <head> en </head>):
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<script language="JavaScript"><!--
function VolumeMin()
{
  alert("Min");
}

function VolumeMax()
{
  alert("Max");
}

window.onBlur = VolumeMin();
window.onFocus = VolumeMax();
//--></script>


Maar nog steeds wordt alleen bij het laden van de page VolumeMin() aangeroepen direct gevolgd door VolumeMax(). Daarna nooit meer.

  • André
  • Registratie: Maart 2002
  • Laatst online: 18-05 16:30

André

Analytics dude

Gebruik dan ook de code die ik je geef :/

  • Hermarcel
  • Registratie: April 2003
  • Niet online
André schreef op 05 november 2004 @ 15:30:
Gebruik dan ook de code die ik je geef :/
Om discussies te voorkomen, heb ik je code gecopied/paste. Resultaat is hetzelfde.

  • André
  • Registratie: Maart 2002
  • Laatst online: 18-05 16:30

André

Analytics dude

Als ik deze code gebruik krijg ik keurig een alert als het scherm blurred en ook als hij focussed:

code:
1
2
3
4
5
6
7
8
9
10
11
<html>
  <head>
    <title>Huppel</title>
    <script type="text/javascript">
      window.onfocus = function() { alert("focus"); }
      window.onblur = function() { alert("blur"); }
    </script>
  </head>
  <body>
  </body>
</html>

[ Voor 42% gewijzigd door André op 05-11-2004 15:49 ]


  • Hermarcel
  • Registratie: April 2003
  • Niet online
Dat is ook inderdaad wat ik zou verwachten, maar met framesets schijnt dat dus anders te zijn. Linkje: http://www.cocon-therapie.net/realindex.htm

  • André
  • Registratie: Maart 2002
  • Laatst online: 18-05 16:30

André

Analytics dude

Zet het script eens in een pagina ipv je frameset :)


En over die beveiliging: rechtermuisknop indrukken, op enter rammen, muisknop loslaten ;)

[ Voor 48% gewijzigd door André op 05-11-2004 15:59 ]


Verwijderd

Vrijbuiter schreef op 05 november 2004 @ 15:51:
Dat is ook inderdaad wat ik zou verwachten, maar met framesets schijnt dat dus anders te zijn. Linkje: http://www.cocon-therapie.net/realindex.htm
lache hoor; erg fansy!.. ik zal het eens doorgegeven aan iemand met een 'irritant' muziekje op zijn site :)

:)

[ Voor 13% gewijzigd door Verwijderd op 05-11-2004 17:03 ]


  • mocean
  • Registratie: November 2000
  • Laatst online: 30-03 18:32
//offtopic tip
Is het niet een beetje onhandig om de site met die popups al online te zetten op het domein?

Koop of verkoop je webshop: ecquisition.com


  • Cavorka
  • Registratie: April 2003
  • Laatst online: 27-03-2018

Cavorka

Internet Entrepreneur

Kan er even een warning geplaatst worden bij die link, die crashed FireFox namelijk. Je krijg namelijk oneindig veel alerts. Heel erg fijn.

the-blueprints.com - The largest free blueprint collection on the internet: 50000+ drawings.


  • Hermarcel
  • Registratie: April 2003
  • Niet online
André schreef op 05 november 2004 @ 15:57:
Zet het script eens in een pagina ipv je frameset :)
Script in een pagina ipv frameset is een idee. Probeer ik vanavond. :)
André schreef op 05 november 2004 @ 15:57:
En over die beveiliging: rechtermuisknop indrukken, op enter rammen, muisknop loslaten ;)
Ja weet ik, is beveiliging van niks, maar eigenaar wilde het zo... :+
mocean schreef op 05 november 2004 @ 18:12:
//offtopic tip
Is het niet een beetje onhandig om de site met die popups al online te zetten op het domein?
Mijn testsites draaien lokaal en ik wilde het jullie even laten zien in de hoop dat het de gouden tip zou opleveren.
Cavorka schreef op 05 november 2004 @ 18:18:
Kan er even een warning geplaatst worden bij die link, die crashed FireFox namelijk. Je krijg namelijk oneindig veel alerts. Heel erg fijn.
Sorry about that! Vreemd trouwens dat FF anders reageert dan IE. Misschien ligt hier de clou van het verhaal wel.

*edit: Popups zijn uit de site gehaald.

  • Hermarcel
  • Registratie: April 2003
  • Niet online
André schreef op 05 november 2004 @ 15:57:
Zet het script eens in een pagina ipv je frameset :)
Helaas! Zo te zien wijst het window-object dan naar het frame.

Iemand nog ideeën?

  • djluc
  • Registratie: Oktober 2002
  • Laatst online: 19-05 18:05
parent.onblur ofzo? probeer eens wat..

  • Hermarcel
  • Registratie: April 2003
  • Niet online
djluc schreef op 05 november 2004 @ 19:38:
parent.onblur ofzo? probeer eens wat..
parent, top etc, no luck...

Kan ik op de één of andere manier testen of het window ontop is?

*edit: Met een ontop-test kan ik regelmatig ( bv 1 keer/sec met setTimeout() ) controleren of ik ontop ben of niet.

[ Voor 20% gewijzigd door Hermarcel op 06-11-2004 12:20 ]

Pagina: 1