Jump to content

javascript bypassed for href link


rubing

Recommended Posts

I had some code working fine, that was being generated dynamically by php.  Now, I entered it manually and can't get it to work at all either by pseudo or onclick method. 

 

 

<a href="javascript_required.html" onclick="soundManager.play('mySound','Rick.mp3')"><img src='images/bigplay.png' /></a>

Link to comment
https://forums.phpfreaks.com/topic/107561-javascript-bypassed-for-href-link/
Share on other sites

I had some code working fine, that was being generated dynamically by php.  Now, I entered it manually and can't get it to work at all either by pseudo or onclick method. 

 

 

<a href="javascript_required.html" onclick="soundManager.play('mySound','Rick.mp3')"><img src='images/bigplay.png' /></a>

 

In what way is it not working?

Either get rid of the A tag and just use onclick of the image:

<img src="images/bigplay.png" onclick="soundManager.play('mySound','Rick.mp3');" />

or return false in the A tag:

<a href="javascript_required.html" onclick="soundManager.play('mySound','Rick.mp3');return false;"><img src='images/bigplay.png' /></a>

Yeah, after you said it I remebered reading that somewhere  ;D

 

I want to write some code to switch out the play button for a pause button while the music is playing.  Can I do that in the anchor's onclick code.  Or should i place that in the head??

 

 

 

In your sound manager, have a play functoin and a pause function. Also, add a property to track the current status (playing or paused). Then, in your onclick, use a more generic function (like togglePlay). In togglePlay, determine which function to run by testing the status property, and then run that function.

sounds like you've had experience with this script!  i appreciate the advise!  There's something about the javascript syntax that really bugs me, like for instance:

 

 

why does the sound manager put brackets inside parenthesis...e.g.:

soundManager.createSound({

id:'mySound1',

url:'../mpc/audio/CHINA_1.mp3'

});

 

it's the same thing as sending a string as an argument, but instead, it's a javascript object (JSON). if it helps, think of it as this:

var myobj = {
id:'mySound1',
url:'../mpc/audio/CHINA_1.mp3'
};
soundManager.createSound(myobj);

If you aren't familiar with JSON, it's similar to an associative array in PHP.

it's the same thing as sending a string as an argument, but instead, it's a javascript object (JSON). if it helps, think of it as this:

var myobj = {
id:'mySound1',
url:'../mpc/audio/CHINA_1.mp3'
};
soundManager.createSound(myobj);

If you aren't familiar with JSON, it's similar to an associative array in PHP.

 

Not to derail the thread, but technically that's not JSON.  That's object literal notation.  JSON is a subset of object literal notation that requires identifyers to be strings themselves (http://www.json.org/js.html).  So:

var myJSON = 
   {
      "id" : "mySound1",
      "url" : "../mpc/audio/CHINA_1.mp3"
   };

 

Is JSON.

 

Small nit to pick, I know, but the two aren't entirely the same.  To me, it's like saying ++i and i++ are the same thing.  Close, but not quite.  It also doesn't help when people like Dustin Diaz continue to call object literal notation JSON.

 

Anyway, it's just a pet peeve of mine.  My communication degree has turned me into something of a language/terminology fiend. :)

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.