【发布时间】:2011-01-30 10:11:48
【问题描述】:
我有以下场景。
我向用户展示了一些来自服务器的音频文件。用户单击一个,然后 onFileSelected 最终会同时使用选定的文件夹和文件执行。该函数所做的是更改嵌入对象的源。所以在某种程度上,它是在接受它并保存用户选择之前对所选文件的预览。 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);
};
现在,这在 Firefox 中运行良好,但 Safari 和 Chrome 只是拒绝更改源,无论操作系统如何。
jQuery 找到对象(jQuery.size() 返回 1),它执行代码,但 HTML 代码没有变化。
为什么 Safari 会阻止我更改 <embed> 源,我该如何规避?
【问题讨论】:
标签: jquery html embedded-resource