亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 語言 > PHP > 正文

yii2 頁面底部加載css和js的技巧

2024-05-04 23:45:07
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了yii2 頁面底部加載css和js的技巧的相關資料,需要的朋友可以參考下
 

一般來說,網頁內部的js文件或代碼,都是放置在網頁底部</body>的前面,這是因為網頁自上而下加載,用戶在訪問我們頁面的時候盡量不要因為加載js展現過長時間的空白頁面,停留時間過長就白白流失了用戶量。

yii2中是集成了jQuery的,而且jQuery文件是加載在頁面底部的,因此,如果我們的js代碼段不在頁面底部加載,就很大可能會發生$未定義的友好提示。

我這廢話一大堆得毛病確實需要去掛個號看看了...

先來看看js代碼段怎么處理

 <?php$this->registerJs('$(function () {//為所欲為的寫你想要寫的js代碼吧$......});', /yii/web/View::POS_END);

對,就是用上面的registerJs方法注冊,有小伙伴聽不懂了,啥是注冊,簡單理解就是把你的js代碼放置在你想要放的頁面位置。

第一個參數嘛,很好理解,就是我們要寫的js代碼塊。第二個參數就是我們需要指定代碼塊插入在頁面的具體位置了。

第二個參數這里只討論 /yii/web/View::POS_END,意思就是頁面底部</body>之前插入。

當然還有第三個參數,意思是js代碼塊的一個id標示,不指定會默認生成,此處忽略。

 哦對了,上面的$this不要混淆,這里是指yii/web/View對象

接下來一起看看怎么引入外部的js文件。

官網的例子是這樣給的

 $this->registerJsFile('http://example.com/js/main.js', ['depends' => [/yii/web/JqueryAsset::className()]]); 

但是人家說了,我們不建議這么用,這樣依賴來依賴去關系復雜。

好了,我們來看看怎么使用包管理asset bundles進行注冊吧。

我們先打開文件 backend/assets/AppAsset.php文件瞅瞅是什么高大上的東西,我擦,果然高深,我張作完全看不懂的樣子,完了,下面沒法寫了,看不懂怎么講,回歸正題,我們要抓緊時間擴展下。

我們在AppAsset類里添加了兩個靜態方法,完整版的AppAsset類如下:

 namespace backend/assets;use yii/web/AssetBundle;/** * @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',  ];  public $js = [  ];  public $depends = [    'yii/web/YiiAsset',    'yii/bootstrap/BootstrapAsset',  ];  //定義按需加載JS方法,注意加載順序在最后   public static function addScript($view, $jsfile) {     $view->registerJsFile($jsfile, [AppAsset::className(), 'depends' => 'backend/assets/AppAsset']);   }   //定義按需加載css方法,注意加載順序在最后   public static function addCss($view, $cssfile) {     $view->registerCssFile($cssfile, [AppAsset::className(), 'depends' => 'backend/assets/AppAsset']);   } }

我們先來說說添加的addScript和addCss有啥作用,意圖是啥,上面說了,不建議在view層直接用$this->registerJsFile方法注冊文件,這里呢,我們添加的addScript方法,以后view層直接調用這個方法對文件進行注冊。

那為啥這個就好了呢?好處是非常明顯的,調用該方法避免了每次注冊文件都要填寫依賴關系,十分方便。

其中需要說明的是,需要注冊的文件都會在yii.js和bootstrap.js文件的后面,這也正是我們所需要的。

這樣一來,我們在view層加載外部js文件也就灰常簡單了,像下面這樣,

use backend/assets/AppAsset;AppAsset::register($this);AppAsset::addScript($this,'/css/main.js');

而不必像下面這樣繁瑣:

$this->registerJsFile('/css/main.js',['depends'=>['backend/assets/AppAsset'], 'position'=> $this::POS_END]);$this->registerJsFile('/css/left.js',['depends'=>['backend/assets/AppAsset']]);$this->registerJsFile('/css/extension.js',['depends'=>['backend/assets/AppAsset']]);

到此喃,我們就完整的實現了在yii2中頁面底部加載css,js代碼或外部文件了。

以上所述是小編給大家介紹的yii2 頁面底部加載css和js的技巧的相關內容,希望對大家有所幫助!



注:相關教程知識閱讀請移步到PHP教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
中文字幕在线日韩| 亚洲欧美激情一区| 日韩av色在线| www.欧美精品一二三区| 亚洲女人天堂av| 亚洲第一av网| 国产亚洲精品久久久久动| 欧美情侣性视频| 精品国产鲁一鲁一区二区张丽| 欧美中文在线观看国产| 欧美激情第1页| 欧美理论电影在线播放| 亚洲www视频| 欧美极品少妇全裸体| 最近2019年中文视频免费在线观看| 亚洲精品自产拍| 精品露脸国产偷人在视频| 午夜伦理精品一区| 欧美电影免费播放| 精品视频在线导航| 8090成年在线看片午夜| 国产精品欧美一区二区三区奶水| 韩国国内大量揄拍精品视频| 日韩国产高清视频在线| 精品久久中文字幕| 成人免费在线视频网址| 久久韩剧网电视剧| 欧美激情性做爰免费视频| 日韩av在线网| 欧美激情videoshd| 国产午夜精品视频| 另类美女黄大片| 国产精品免费看久久久香蕉| 精品视频在线导航| 国产精品午夜国产小视频| 亚洲视频视频在线| 亚洲视频在线观看| 欧美巨猛xxxx猛交黑人97人| 欧美高清激情视频| 久久香蕉国产线看观看av| 日韩av免费在线播放| 欧美日韩国产精品一区二区不卡中文| 国产一区二区三区免费视频| 在线观看国产成人av片| 亚洲精品福利免费在线观看| 亚洲精品成人免费| 国产精品精品一区二区三区午夜版| 久久夜色精品国产欧美乱| 亚洲自拍欧美色图| 国产精品一区二区久久精品| 国产精品久久一| 精品美女久久久久久免费| 欧美老妇交乱视频| 国产日韩精品电影| 国产91在线高潮白浆在线观看| 欧美成人小视频| 欧美资源在线观看| 爽爽爽爽爽爽爽成人免费观看| 高清欧美一区二区三区| 日韩精品极品视频| 欧美黄色片免费观看| 欧美性xxxx极品hd满灌| 亚洲欧美国产日韩中文字幕| 福利一区视频在线观看| 国产精品精品国产| 欧美日韩国产成人在线| 欧美激情欧美狂野欧美精品| 国产精品美女久久久久久免费| 富二代精品短视频| 亚洲国产一区自拍| 亚洲r级在线观看| 欧美激情视频一区| 欧美成年人视频网站| 毛片精品免费在线观看| 午夜精品久久久久久久99黑人| 中文字幕国产精品久久| 日韩欧美中文第一页| 亚洲国产天堂久久国产91| 欧美国产日韩一区二区| 久久视频在线播放| 日韩国产在线播放| 中文字幕亚洲一区二区三区| 欧美亚洲视频在线观看| 亚洲欧美国产一区二区三区| 欧美性猛交xxxx免费看| 亚洲精品成人av| 日韩av免费在线| 欧美性猛交丰臀xxxxx网站| 日韩精品视频免费在线观看| 92国产精品久久久久首页| 国产欧美欧洲在线观看| 日韩中文字幕在线免费观看| 欧美国产日本高清在线| 黄色一区二区在线| 国产精品国产三级国产专播精品人| 亚洲国产日韩欧美综合久久| 久久免费视频观看| 国产精品69久久| 国内精品在线一区| 欧美精品videossex88| 久久久精品视频成人| 一区二区三区黄色| 欧美重口另类videos人妖| 91热福利电影| 精品中文字幕久久久久久| 96sao精品视频在线观看| 国产日产亚洲精品| 久久久久久久999精品视频| 中文字幕日韩av综合精品| 精品国产91久久久久久| 久久久久久久色| 亚洲美女喷白浆| 曰本色欧美视频在线| 国模私拍一区二区三区| 久久免费高清视频| 亚洲**2019国产| 欧美精品性视频| 亚洲xxx自由成熟| 精品久久久久久久大神国产| 成人久久一区二区三区| 成人精品视频99在线观看免费| 欧美一级视频免费在线观看| 国产精品白嫩美女在线观看| 欧美第一黄网免费网站| 中国日韩欧美久久久久久久久| 一区二区三区在线播放欧美| 国产精品国产三级国产aⅴ9色| 中文欧美日本在线资源| 午夜精品久久久久久久白皮肤| 亚洲欧美变态国产另类| 亚洲国产欧美一区| 国产成人精品日本亚洲专区61| 久久欧美在线电影| 超碰97人人做人人爱少妇| 国产一区二区三区中文| 欧美成人免费全部| 91精品国产自产在线观看永久| 中文字幕久精品免费视频| 亚洲性视频网站| 久久6精品影院| 亚洲级视频在线观看免费1级| 国产成人精品电影| 国产主播欧美精品| 国产日韩精品入口| 精品日本高清在线播放| 国产精品丝袜一区二区三区| 亚洲精品美女久久久| 精品国产1区2区| 精品呦交小u女在线| 久久精品久久久久久国产 免费| 日韩av网站导航| 欧美午夜精品久久久久久浪潮| 欧美日韩国产综合视频在线观看中文| 欧美肥臀大乳一区二区免费视频| 亚洲aaaaaa| 欧美午夜精品久久久久久浪潮| 精品久久久久久国产91| 国产精品精品一区二区三区午夜版| 国产自产女人91一区在线观看| 中文字幕日韩电影| 欧美国产日韩中文字幕在线| 欧美精品电影免费在线观看| 美女999久久久精品视频| 欧美国产日韩一区二区|