我创建了一个新项目yii2
进入head标签我用jquery google api和gmap充电
<?php
$this->head();
Yii::$app->view->registerJsFile('//ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js',['position' => yii\web\View::POS_HEAD]);
Yii::$app->view->registerJsFile('http://maps.googleapis.com/maps/api/js?sensor=false',['position' => yii\web\View::POS_HEAD]);
Yii::$app->view->registerJsFile('/js/gmap3/dist/gmap3.js',['position' => yii\web\View::POS_HEAD]);
?>
总是在脑袋里放这个脚本
<script type="text/javascript">
$(function(){
$('#test1').gmap3({
marker:{
address: "Haltern am See, Weseler Str. 151"
},
map:{
options:{
zoom: 14
}
}
});
});
</script>
问题出在正文部分
如果我使用此代码
<?php $this->beginBody() ?>
<div id="test1" class="gmap3"></div>
<?php $this->endBody() ?>
不工作
如果我使用此代码
<?php //$this->beginBody() ?>
<div id="test1" class="gmap3"></div>
<?php //$this->endBody() ?>
IT WORK
beginBody函数与gmap3冲突
Firebug告诉我
TypeError:$(...)。gmap3不是函数 $(&#39;#TEST1&#39)。gmap3({
答案 0 :(得分:0)
非常感谢小费。
问题是收费jquery的默认点(yii2):在底页进入。 我解决了将默认jquery位置添加到head部分。 我修改了AppAsset.php文件,并将以下代码添加到AppAsset类
中public $jsOptions = array('position' => \yii\web\View::POS_HEAD);
进入main.php(view / layout文件夹)后
<?php
Yii::$app->view->registerJsFile('http://maps.googleapis.com/maps/api/js?sensor=false',['position' => yii\web\View::POS_HEAD]);
$this->head();
?>
<script type="text/javascript" src="js/gmap3/dist/gmap3.js"></script>
<script type="text/javascript">
$(function(){
$('#test1').gmap3({
marker:{
address: "Haltern am See, Weseler Str. 151"
},
map:{
options:{
zoom: 14
}
}
});
});
</script>
</head>
谢谢!