Assets,页面js的添加 [ 2.0 版本 ]
有时候希望直接在视图文件中写入js
可用视图方法registerJs,直接在视图中写
<?=$this->registerJs(<<<SCRIPT
console.log("你的js");
SCRITP
)?>
页面加载,查看原代码
</script><script src="/assets/a6b7dc25/jquery.js"></script>
<script type="text/javascript">jQuery(document).ready(function () {
console.log("你的js")
});</script></body>
</html>
可见页面已经加载了自定义的js,但是却多了,有时候并不需要框架提供的jquery.js版本,怎样去掉?
查看类参考手册 registerJs有三个参数,第一个为js代码块,第二个为位置,第三个为js块的键值;
位置有这几种
registerJs ( $js, $position = self::POS_READY, $key = null )
POS_HEAD: js放头部,
POS_BEGIN: 在body区域的最开始位置
POS_END: 在body区的最后位置
POS_LOAD: 放在 jQuery(window).load()里面,还会自动注册jQuery
POS_READY: 默认情况,放在 jQuery(window).ready()里面,还会自动注册jQuery
因此,不加位置是会加载默认的jquery文件的,因此指定位置即可:
<?=$this->registerJs(<<<SCRIPT
console.log("你的js");
SCRITP
,\yii\web\View::POS_END)?>
再次刷新页面,可以看到页面已经不再自动发布框架的jquery
</script><script type="text/javascript">console.log("你的js")</script></body>
lbmzorx
注册时间:2017-10-20
最后登录:2024-01-29
在线时长:189小时41分
最后登录:2024-01-29
在线时长:189小时41分
- 粉丝6
- 金钱15240
- 威望100
- 积分18130
共 0 条评论