帮助手册>功能配置>初始化配置

flashvars对象功能说明

在调用播放器时,都需要给播放器传递一些参数,比如视频地址,是否默认播放等。在ckplayer中,默认传递的这些参数都由一个对象来定义,即var falshvars={}。该对象里包含了各种需要传递的属性,比如f:视频地址,p:默认是否自动播放

请注意,这个只是一个变量,并不是指定的名称。你可以用别的变量名称来定义。在演示文档里的代码如下:

<div id="a1"></div>
<script type="text/javascript" src="ckplayer/ckplayer.js" charset="utf-8"></script>
<script type="text/javascript">
	var flashvars={
	    f:'http://vf3.mtime.cn/Video/2016/04/14/flv/160414173112113429.flv',
	    c:0
	};
	var video=['http://movie.ks.js.cn/flv/other/1_0.mp4->video/mp4'];
	CKobject.embed('ckplayer/ckplayer.swf','a1','ckplayer_a1','600','400',false,flashvars,video);
</script>

如果你用别的变量来定义,比如用 ckplayer来替换,则代码可变成下面的形式:

<div id="a1"></div>
<script type="text/javascript" src="ckplayer/ckplayer.js" charset="utf-8"></script>
<script type="text/javascript">
	var ckplayer={
	    f:'http://vf3.mtime.cn/Video/2016/04/14/flv/160414173112113429.flv',
	    c:0
	};
	var video=['http://movie.ks.js.cn/flv/other/1_0.mp4->video/mp4'];
	CKobject.embed('ckplayer/ckplayer.swf','a1','ckplayer_a1','600','400',false,ckplayer,video);
</script>

注意二段代码的不同,一共有二处不同的地方

在http协议中。通信中最常用的有二个方式。一是get,一是post,ckplayer传递初始化参数的形式类似于get形式,比如我们要向一个服务器端程序请求地址时可能会使用如:get.php?id=1&user=ck这样的。其实在ckplayer的flashplayer中传递参数也是如此。比如ckplayer.swf?p=1&s=0,所以上面的代码形式最终都要转换成这种方式向播放器传递参数。当然,在ckplayer中还有另一种传递参数的形式。就是播放器“主动读取”(其实所谓的传递参数都是要播放器读取的)。这种“主动读取”主要使用在一些共用配置中。比如在ckplayer.js中的ckstyle()函数和ckplayer.xml中的<flashvars></flashvars>节点。此外在不同的调用视频地址方式中还可以在调用地址中设置。下面列出一个详细的调用过程来详细讲解。

1:页面中的调用代码主要部分如下:

var flashplayer={
    f:'geturl.php?id=[$pat]',
    a:'123',
    s:1,
    p:1,
    c:0
};

上面的设置,s=1说明是使用的网址形式调用视频地址。即播放器先要请求:geturl.php?id=123,这个页面里再输出视频地址,比如这个页面输出内容是:

{p->0}http://vf3.mtime.cn/Video/2016/04/14/flv/160414173112113429.flv

注意,这个页面里只能输出以上内容,即在页面中右键查看源代码,也是这些内容,不包含其它如<html><head>这些内容。

此时,播放器先读取页面中的var flashvars={},得到p=1,但是因为采用的网址形式调用。则在接下来时读取geturl.php?id=123这个页面。里面有{p->0},则播放器认为需要默认暂停。


现在归纳一下:

1:播放器首先读取页面中定义的var flashvars={}

2:接下来播放器会加载ckplayer.js中的ckstyle()(或ckplayer.xml)此时,如果ckstyle()里有flashvars:''这个属性(或ckplayer.xml里有<flashvars></flashvars>节点),则会把这里的参数也补充进来。注意这里是补充。即如果你在页面中已设置过某个属性了。则这里的设置就不管用了。

3:接下来会读取视频地址输出页面,如果这个地址里也设置了flashvars的配置。则会把这里的配置替换进来。注意这里是替换。会替换掉之前的配置。

建议了解以下相关内容:
Powered by ckplayer.com  
Copyright©ckplayer,2011-2016