php中插入flash播放器遇到一个问题

skip 发布于 2012/05/28 17:00
阅读 1K+
收藏 0

在php页面嵌入了一段flash播放器的代码,我直接写固定地址是可用的,但:左边有个可点击的选项,我根据不同的按钮传递不同的值过去,值也是顺利传过去了,但是奇怪的是浏览器每次会自动给我添加一串字符串,导致播放文件路径发生错误("NetworkError: 404 Not Found - http://localhost/etcm/%EF%BB%BF%EF%BB%BFfile/testfile.swf"),我直接用firebug手动去掉%EF%BB%BF%EF%BB%BF这个又能播放了。。。页面编码是utf8的。

嵌入的播放器代码是:

<object classid="clsid:D27CDB6E-AE6D-11CF-96B8-444553540000" id="obj1" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0" border="0" width="350" height="280"> 

        <param name="movie" id="param" value="file/testfile.swf" /> 

        <param name="quality" value="High" /> 

        <embed src="file/testfile.swf" id="embed" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" name="obj1" width="350" height="280"> 

</object>

传值的代码是:

var nnn = $('#video').val();

$('#param').val(nnn);

$('#embed').attr('src',nnn);

加载中
0
vitou
vitou
http://xdebug.blog.51cto.com/1135229/849879  不知道这个对你有用不 本人不是php的
skip
skip
可能是我不太会用这个,我在传值那地方替换是没有效果的
0
skip
skip
求高人指导下啊,可能如沙发的哥们说的是因为浏览器自动给加上了BOM头,有没有可控制的做法?
0
leo108
leo108
目测是你没写对相对路径
skip
skip
回复 @leo108 : 我设置了一个隐藏域, <input type="hidden" id="video" name="video" value="" />
leo108
leo108
回复 @skip : 好像真的是bom的问题,$('#video').val();这里面的值是哪里来的?
skip
skip
不会的吧,我用firebug去编辑了下页面src属性,填写的和显示的一模一样,然后可以播放的。通过控制台看就是路径不对,原因是加上了那一串字符串,用firebug编辑的没有加就对了
0
skip
skip
$.ajax({
            url: "index.php?c=study&a=getunit&dirid="+kldid,
            type: "post",
            data: '',
            datatype:"html",
            success: function(data){
                $('#video').val(data);
isReady();
            }
        });
function isReady(){
        var nnn = $('#video').val();
        $('#param').val(nnn);
        $('#embed').attr('src',nnn);
     }
0
leo108
leo108
把 index.php的编码改成utf8无bom就可以了。可以用notepad++来改
skip
skip
找到了,原来是在语言包文件中。。。谢谢你了
skip
skip
有没有批量修改文件格式的?
leo108
leo108
回复 @skip : 你把所有的文件编码都改成无bom的模式就行了
skip
skip
的确和index.php的编码有关系,原来有两个BOM头,现在只有一个去了。。。没找到,汗
返回顶部
顶部