不加PHP&Javascript则加stylesheet/script

Add stylesheet/script if not added PHP & Javascript

我什至不知道从哪里开始尝试这个,我想做的只是加载一个文件一次,因为我目前有多个实例。

我用 php 加载文件,if 条件只是选项是否打开。

if ($vbulletin->options['drc_fa_adm'] & $vbulletin->options['drc_fa_prov'] != 0){
  if ($vbulletin->options['drc_fa_prov'] == 1) {
    echo '<link rel="stylesheet" href="'.$vbulletin->options['bburl'].'/drc/dirty-core/libs/font-awesome/css/font-awesome.min.css">';
  }
  if ($vbulletin->options['drc_fa_prov'] == 2) {
    echo '<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.1/css/font-awesome.min.css">';
  }
}

if ($vbulletin->options['drc_jq_prov'] == 1) {
  echo '<script src="'.$vbulletin->options['bburl'].'/drc/dirty-core/libs/jquery/jquery.min.js"></script>';
} else {
  echo '<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.2/jquery.min.js"></script>';
}

echo '<script src="../drc/dirty-core/libs/jscolor/jscolor.min.js"></script><script src="../drc/dirty-core/js/twit_adm.js"></script>';

这全部挂钩到一个特定的挂钩,某些页面(不是全部)有多个实例,这导致所有这些都被添加 2,3 次或更多次。

我如何检查它们是否已经在页面上,以及它们是否不再回显?

我认为这样的东西可以工作我只是不知道如何将它添加到我的 PHP

<script type="text/javascript">
  if(typeof jQuery == 'undefined'){
    document.write('<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.2/jquery.min.js"></'+'script>');
  }
</script>

试试这个:

$alreadyLoaded = array('css' => false, 'jquery' => false);
if ($vbulletin->options['drc_fa_adm'] & $vbulletin->options['drc_fa_prov'] != 0){
  if ($vbulletin->options['drc_fa_prov'] == 1 and !$alreadyLoaded['css']) {
    echo '<link rel="stylesheet" href="'.$vbulletin->options['bburl'] .
    '/drc/dirty-core/libs/font-awesome/css/font-awesome.min.css">';
    $alreadyLoaded['css'] = true;
}
if ($vbulletin->options['drc_fa_prov'] == 2 and !$alreadyLoaded['css']) {
    echo '<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.6.1/css/font-awesome.min.css">';
    $alreadyLoaded['css'] = true;
    }
}

if ($vbulletin->options['drc_jq_prov'] == 1 and !$alreadyLoaded['jquery']) {
    echo '<script src="'.$vbulletin->options['bburl'].'/drc/dirty-core/libs/jquery/jquery.min.js"></script>';
    $alreadyLoaded['jquery'] = true;
} else if (!$alreadyLoaded['jquery']) {
    echo '<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.2/jquery.min.js"></script>';
    $alreadyLoaded['jquery'] = true;
}