添加样式表/脚本如果没有添加PHP& JavaScript的

时间:2016-05-05 20:43:42

标签: javascript php echo vbulletin

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

我用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>

1 个答案:

答案 0 :(得分:0)

试试这个:

$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;
}