Just nu i M3-nätverket
Gå till innehåll

ljud i jquery


jan-erik

Rekommendera Poster

Hur gör man för att på ett enkelt sätt spela upp ljud med hjälp av jquery? jag har hittat en plug in (se nedan) men när jag kör

 

$.sound.play("bark.wav"); 

så hänger det sig. ljudfilen har funkat i prototype.

 

36  
37 (function($) { 
38      
39 $.sound = { 
40   tracks: {}, 
41   enabled: true, 
42   template: function(src) { 
43     return '<embed style="height:0" loop="false" src="' + src + '" autostart="true" hidden="true"/>'; 
44   }, 
45   play: function(url, options){ 
46     if (!this.enabled) 
47         return; 
48     var settings = $.extend({ 
49       url: url, 
50       timeout: 2000 
51     }, options); 
52      
53     if (settings.track) { 
54         if (this.tracks[settings.track]) { 
55             var current = this.tracks[settings.track]; 
56             current.Stop && current.Stop(); 
57             current.remove();   
58         } 
59     } 
60      
61     var element = $.browser.msie 
62         ? $('<bgsound/>').attr({ 
63             src: settings.url, 
64             loop: 1, 
65             autostart: true 
66           }) 
67         : $(this.template(settings.url)); 
68     element.appendTo("body"); 
69      
70     if (settings.track) { 
71         this.tracks[settings.track] = element; 
72     } 
73      
74     setTimeout(function() { 
75         element.remove(); 
76     }, options.timeout) 
77   } 
78 }; 
79  
80 })(jQuery); 

 

Länk till kommentar
Dela på andra webbplatser

jag kan inte annat än hänvisa till documentationen för den plug-in du valt.

Vad hänger sig? om du använder FF och firebug kan du få mer detaljerad fel-specifikation.

 

Ligger ljudfilen i samma mapp som sidan?

 

Länk till kommentar
Dela på andra webbplatser

jag hade tänkt att bygga in "sound notification", dvs att användaren i vissa lägen skall få en ljudsignal, xvis om h*n fått ett mess i ett forum. Det funkade utnärkt i protptype/scriptacolous, men jag får inte till det i jquery.

Filen är en wav, men det ska väl inte ha nån betydelse?

 

 

 

Länk till kommentar
Dela på andra webbplatser

alltså du vill spela upp en ljudsignal när en användare har fått ny meddelandelen.

 

 

vad händer om du gör en php sida och

kopiera mitt exempel och ändra lite och skriver ut filnamn i från din databas. jag antal när din databas uppdatera då kan du med hjälp av meta http-equiv="refresh" content="60" uppdatera php sidan som du har Inkludera phpfilen på sidan eller du kan skriva ut filnamn varje gång när användare har klicka på nån länk .

 

js fungera så här

om filnamnnet har ett värde då kommer det spela upp annars är det tyst

självklart är utbyggbart

 

 

målet med den här js var att man kan spela upp låtar ifrån sin egen dator.

 

 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>
<head>
<title></title>

<script type="text/javascript">
function text(x)
{
obj = document.getElementById("VIDEO"); 
obj.URL= x;
}
</script>
</head>



<body>

<OBJECT id="VIDEO" CLASSID="CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6" type="application/x-oleobject" style="visibility: hidden; position: absolute; z-index: 1;">

<PARAM NAME="URL" VALUE="The Killers - Human.MP3">
<PARAM NAME="SendPlayStateChangeEvents" VALUE="false">
<PARAM NAME="AutoStart" VALUE="True">
<PARAM name="uiMode" value="none">
<PARAM name="PlayCount" value="1">
</OBJECT>

<input type="file" id="data">
<input value="spela upp" type="button" onclick="text(data.value)">
</body>
</html>

 

Länk till kommentar
Dela på andra webbplatser

Aha! Tack!

jag har tydligen stirat mig blind på jquery.

Jag gjorde så här:

<html>
<head>
<title></title>
<script type="text/javascript">
function alarm()
{
obj = document.getElementById("VIDEO"); 
obj.URL= '../a0/BARK.wav';
}
</script>
</head>
<body>
<OBJECT id="VIDEO" CLASSID="CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6" type="application/x-oleobject" style="visibility: hidden; position: absolute; z-index: 1;">
<PARAM NAME="URL" VALUE="The Killers - Human.MP3">
<PARAM NAME="SendPlayStateChangeEvents" VALUE="false">
<PARAM NAME="AutoStart" VALUE="True">
<PARAM name="uiMode" value="none">
<PARAM name="PlayCount" value="1">
</OBJECT>
<script type="text/javascript">
alarm();
</script>
</body>
</html>

 

BARK.wav är ett hundskall.

På detta sätt kan jag helt enkelt trigga funktionen "alarm" när aktuellt läge uppstår.

Rätt uppfattat?

 

 

 

Länk till kommentar
Dela på andra webbplatser

Jaha, det var ju enkelt.

Min hemsida kör en loop som var 10:e sekund uppdaterar de avsnitt på skärmen som är förändrade. Jag la in detta anrop i denna loop, så om du går in på www.jea.se så kan du höra att det funkar. Sen ska jag bara flytta in det till de ställen där det verkligen ska höras, men det klarar till o med jag!

Tack så väldigt för hjälpen, jag förökte 2 ggr ge dej en poäng, men då hängde sig hela IDG. Du kanske har för många poäng????

 

Länk till kommentar
Dela på andra webbplatser

tips

 

gör en startmotor för js funktionen

 

<body onload="alarm();">

 

eller

 

jag ser att du inte behöver nån js för att du kör bara en låt

du kan ta bort hela js funktionen och köra på den här koden för båda ie och ff och du kan gömma båda Media Player med css

 

 

<object id="MediaPlayer1" width=180 height=50

classid="CLSID:22D6F312-B0F6-11D0-94AB-0080C74C7E95"

codebase="http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701"

standby="Loading Microsoft® Windows® Media Player components..."

type="application/x-oleobject" align="middle">

<param name="FileName" value="sökväg till låten här ">

<param name="AutoStart" value="True">

<param name="ShowStatusBar" value="True">

<param name="DefaultFrame" value="mainFrame">

<PARAM name="PlayCount" value="1">

 

 

<!-- BEGIN PLUG-IN HTML FöR FIREFOX-->

<embed type="application/x-mplayer2"

pluginspage = "http://www.microsoft.com/Windows/MediaPlayer/"

src="sökväg till låten här" align="middle"

width=176

height=144

defaultframe="rightFrame"

AUTOSTART="TRUE"

showstatusbar=true>

</embed>

<!-- END PLUG-IN HTML FOR FIREFOX-->

 

</object>

<!-- END GENERIC ALL BROWSER FRIENDLY HTML FOR WINDOWS MEDIA PLAYER -->

 

 

observera att PLUG-IN HTML FöR FIREFOX fungerar bara när man har ladda upp den på nätet.

 

 

 

[inlägget ändrat 2009-02-04 12:44:56 av mac3]

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...