在页面中直接增加js

在页面中直接增加js

<?php
use yii\Web\View;
?>
<?php $this->registerJs("var options = ".json_encode($options).";", View::POS_BEGIN, 'my-options');?>

registerJs方法第一个参数为js代码。第二个参数为定义js输出位置常量,在yii\web\View中定义。
有以下这些常量:
View::POS_HEAD:当前js代码在页面head节点即将闭合部分。
View::POS_BEGIN : 当前js代码在页面body节点开始位置。
View::POS_END: 当前js代码在页面body节点即将结尾处位置,页面jquery的ready方法上边。
View::POS_READY: 当前js代码在页面jquery的ready方法内部。
View::POS_LOAD: 当前js代码在页面jquery的ready方法下边的load方法内部。
第三个参数为当前这段js代码的id标示,这个参数是可选的,如果没有定义这个参数,当前js代码便会成为id标示。如果定义多个id标示一致,并且位置一致,那么最后一个覆盖之前标示相同的;如果多个标示id一致,位置不一致,都会存在页面上。

引入js文件

<?php $this->registerJsFile('http://cdn.bootcss.com/vue/2.0.0-beta.1/vue.js', [
        //可选参数,依赖的资源包名称,这两个资源类所包含定义的js文件都会出现在当前js文件的前边
        'depends' => [
            \yii\web\JqueryAsset::className(),
            \frontend\assets\OurAsset::className(),
        ],
        //可选参数,定义当前js文件的出现位置,默认位置为View::POS_END
        'position' => View::POS_END,
    ],
        //vue.js是为当前引入js的定义的一个标示id,可选参数,如果没有定义这个值,标示id为第一个参数的值。
        //如果多个引入文件的标示id是相同的,后边的将覆盖前边的。
    'vue.js');?>

JS BLOCK 注意script 标签

<script type="text/javascript">
<?php $this->beginBlock('js') ?>  

    //js代码
    
<?php $this->endBlock() ?>  
<?php $this->registerJs($this->blocks['js'], \yii\web\View::POS_END); ?> 
</script>
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 第一部分 HTML&CSS整理答案 1. 什么是HTML5? 答:HTML5是最新的HTML标准。 注意:讲述HT...
    kismetajun阅读 27,696评论 1 45
  • 概要 64学时 3.5学分 章节安排 电子商务网站概况 HTML5+CSS3 JavaScript Node 电子...
    阿啊阿吖丁阅读 9,308评论 0 3
  • 一:什么是闭包?闭包的用处? (1)闭包就是能够读取其他函数内部变量的函数。在本质上,闭包就 是将函数内部和函数外...
    xuguibin阅读 9,735评论 1 52
  • 1、BeanFactory 接口提供了一个先进的配置机制,使得任何类型的对象的配置成为可能。Application...
    国祥同学阅读 5,475评论 0 0
  • 好吧!我承认我不会给文章取名,刚才读了乐嘉老师《本色》一书中关于梦想的篇章,有感,故取此名。 梦想是一个被人们说烂...
    小苜蓿阅读 257评论 0 5