单个页面如何按需加载js

讨论程序使用中的问题
回复
kevin276
帖子: 6
注册时间: 2022年 8月 5日 16:02

单个页面如何按需加载js

帖子 kevin276 »

typecho版本:1.2.0
我的网站有一个页面使用了数学公式,引入的一个mathjax,具体就是在header.php插入代码

代码: 全选

<script type="text/javascript"
   src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML">
  </script>
效果很好。
但是,这个脚本加载速度比较慢,而且只有一两个页面需要,其他的都不需要此脚本,如何实现需要这个js再加载,不需要时不加载?
Lopwon
帖子: 173
注册时间: 2016年 11月 14日 11:19

Re: 单个页面如何按需加载js

帖子 Lopwon »

viewtopic.php?t=16324

参考第二段代码,当自定义字段有值时,加载 js
kevin276
帖子: 6
注册时间: 2022年 8月 5日 16:02

Re: 单个页面如何按需加载js

帖子 kevin276 »

Lopwon 写了: 2022年 8月 5日 20:36 viewtopic.php?t=16324

参考第二段代码,当自定义字段有值时,加载 js
非常感谢🙏成功了。先在文章的自定义字段填了一个字符串,比如:MathDisplay
图片
在后台header.php的<head></head>字段中添加代码:

代码: 全选

<?php if (($this->fields->MathDisplay !== null) && ($this->is('post'))): //文章页post有自定义字段MathDisplay的时加载以下JS,显示数学公式 ?>
     <此处插入需要加载的js>
<?php endif; ?>
测试了几遍,只要在输入自定义字段中输入MathDisplay就可以加载需要的js,否则就不加载。
附件
IMG_20220807_140048.jpg
IMG_20220807_140048.jpg (97.15 KiB) 查看 513 次
回复