zoukankan      html  css  js  c++  java
  • Yii2引入css和js文件

    引入方式有多种:

    1、可以直接在视图页面上引入

    <?php 
    use yiihelpersHtml;
    ?>
    <?=Html::cssFile('@web/css/index.css')?>
    <?=Html::jsFile('@web/js/jquery.min.js')?>
    

    2、可以直接写原生代码引入,路径是项目目录/web/css 或者/js

    <script src="js/nav.js"></script> 
    

    3、可以使用assetBundle管理css样式及js脚本.
    资源包定义:basic/assets/AppAsset.php

    <?php
    /**
     * @link http://www.yiiframework.com/
     * @copyright Copyright (c) 2008 Yii Software LLC
     * @license http://www.yiiframework.com/license/
     */
     
    namespace appassets;
     
    use yiiwebAssetBundle;
     
    /**
     * @author Qiang Xue <qiang.xue@gmail.com>
     * @since 2.0
     */
    class AppAsset extends AssetBundle
    {
        public $basePath = '@webroot';
        public $baseUrl = '@web';
        public $css = [
            'css/site.css',
            'css/base.css'
        ];
        public $js = [
            'js/sliders.js'
        ];
        public $depends = [ //依赖包,没有可以不写
            'yiiwebYiiAsset',
            'yiiootstrapBootstrapAsset',  
        ];
     
        //定义按需加载JS方法,注意加载顺序在最后  
        public static function addScript($view, $jsfile) {  
            $view->registerJsFile($jsfile, [AppAsset::className(), 'depends' => 'apiassetsAppAsset']);  
        }  
          
       //定义按需加载css方法,注意加载顺序在最后  
        public static function addCss($view, $cssfile) {  
            $view->registerCssFile($cssfile, [AppAsset::className(), 'depends' => 'apiassetsAppAsset']);  
        }  
    }
    

    在视图文件开头写入:

    <?php
    use yiihelpersHtml;
    use appassetsAppAsset;
     
    AppAsset::register($this);
     
    ?>
    

    到现在为止,我们可以在浏览器上测试,发现并没有引入css和js文件,这里要注意了,我们还需要最后一步:
    在视图文件中我们要加入一下代码(注:如果我们使用公共视图文件,可以加入到公共视图文件,如果没有使用,可以放到单独页面中)

    <?php
       $this->beginPage() 
    ?> 
    <?php $this->head() ?>
    <?php $this->beginBody() ?> 
    <?php $this->endBody() ?>
    <?php $this->endPage() ?>
    

    4、不需要在资源包管理器中定义方法,只要在视图页面中直接引入即可

    AppAsset::register($this);  
    //css定义一样  
    $this->registerCssFile('@web/css/font-awesome.min.css',['depends'=>['apiassetsAppAsset']]);  
      
     $this->registerJsFile('@web/js/jquery-ui.custom.min.js',['depends'=>['apiassetsAppAsset']]);  
    //$this->registerJsFile('@web/js/jquery-ui.custom.min.js',['depends'=>['apiassetsAppAsset'],'position'=>$this::POS_HEAD]);
    

    转载链接:https://www.jianshu.com/p/45426d8b2c0e
    yii2 在页面底部加载css和js:http://www.manks.top/article/yii2_load_js_css_in_end

  • 相关阅读:
    JSP/Servlet相关
    mysql 相关问题解决
    Git常用
    利用JDBC连接MySQL并使用MySQL
    memcache、redis原理对比
    Python 2.7.x 和 3.x 版本的重要区别
    python 单例模式
    python 装饰器原理及用法
    python 冒泡排序
    python 迭代器和生成器
  • 原文地址:https://www.cnblogs.com/meetuj/p/11429017.html
Copyright © 2011-2022 走看看