包 | system.web.helpers |
---|---|
继承 | class CGoogleApi |
版本 | $Id: CGoogleApi.php 3515 2011-12-28 12:29:24Z mdomba $ |
源码 |
CGoogleApi 提供辅助方法以便用户更加容易的使用谷歌AJAX接口。
公共属性
属性 | 类型 | 描述 | 定义在 |
---|---|---|---|
bootstrapUrl | CGoogleApi |
公共方法
方法 | 描述 | 定义在 |
---|---|---|
init() | 渲染jsapi脚本文件。 | CGoogleApi |
load() | 加载指定的接口模块。 | CGoogleApi |
register() | 注册指定的接口模块。 | CGoogleApi |
属性详细
bootstrapUrl
属性
public static $bootstrapUrl;
方法详细
init()
方法
public static string init(string $apiKey=NULL)
| ||
$apiKey | string | 接口密钥。如果没有个密钥则为null。 |
{return} | string | 加载的谷歌jsapi的脚本连接。 |
public static function init($apiKey=null)
{
if($apiKey===null)
return CHtml::scriptFile(self::$bootstrapUrl);
else
return CHtml::scriptFile(self::$bootstrapUrl.'?key='.$apiKey);
}
渲染jsapi脚本文件。
load()
方法
public static string load(string $name, string $version='1', array $options=array (
))
| ||
$name | string | 模块名 |
$version | string | 模块版本 |
$options | array | 将被传到load()方法中的额外的js选项。 |
{return} | string | 加载模板的js代码。你可以使用 CHtml::script() 把它装入到脚本标签中。 |
public static function load($name,$version='1',$options=array())
{
if(empty($options))
return "google.load(\"{$name}\",\"{$version}\");";
else
return "google.load(\"{$name}\",\"{$version}\",".CJavaScript::encode($options).");";
}
加载指定的接口模块。 注意,你应该首先调用init方法。
register()
方法
public static void register(string $name, string $version='1', array $options=array (
), string $apiKey=NULL)
| ||
$name | string | 模块名 |
$version | string | 模块版本 |
$options | array | 将被传到load()方法中的额外的js选项。 |
$apiKey | string | 接口密钥。如果没有个密钥则为null。 |
public static function register($name,$version='1',$options=array(),$apiKey=null)
{
$cs=Yii::app()->getClientScript();
$url=$apiKey===null?self::$bootstrapUrl:self::$bootstrapUrl.'?key='.$apiKey;
$cs->registerScriptFile($url);
$js=self::load($name,$version,$options);
$cs->registerScript($name,$js,CClientScript::POS_HEAD);
}
注册指定的接口模块。 这个类似于 load ,只不过这个是注册加载的代码。 用 CClientScript 代替返回。 这个方法也注册jsapi脚本,需要加载时调用。