JavaScript: Changing src-attribute of a embed-tag

Posted by Mike on Stack Overflow See other posts from Stack Overflow or by Mike
Published on 2010-03-22T15:58:39Z Indexed on 2010/03/22 16:01 UTC
Read the original article Hit count: 192

Filed under:
|
|

I have the following scenario.

I show the user some audio files from the server. The user clicks on one, then onFileSelected is eventually executed with both the selected folder and file. What the function does is change the source from the embedded object. So in a way, it is a preview of the selected file before accepting it and save the user's choice. A visual aid.

HTML

<embed src="/resources/audio/_webbook_0001/embed_test.mp3" type="audio/mpeg" id="audio_file">

JavaScript

function onFileSelected(file, directory) {
   jQuery('embed#audio_file').attr('src', '/resources/audio/'+directory+'/'+file);
};

Now, this works fine in Firefox, but Safari and Chrome simply refuse to change the source, regardless of Operating System.

jQuery finds the object (jQuery.size() returns 1), it executes the code, but no change in the HTML Code.

Why does Safari prevent me from changing the <embed> source and how can I circumvent this?

© Stack Overflow or respective owner

Related posts about jQuery

Related posts about embedded-resource