Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/375.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我可以在PHP文件中引用外部JavaScript文件吗?_Php_Javascript - Fatal编程技术网

我可以在PHP文件中引用外部JavaScript文件吗?

我可以在PHP文件中引用外部JavaScript文件吗?,php,javascript,Php,Javascript,我好像没法让它工作。我有一个小的JS文件,可以根据一天中的时间切换横幅,但是在我的PHP文件中进行外部引用似乎不起作用。它在HTML页面中运行良好 这是JavaScript文件中的代码 function getStylesheet() { var currentTime = new Date().getHours(); if (7 <= currentTime && currentTime < 19) { document.write(

我好像没法让它工作。我有一个小的JS文件,可以根据一天中的时间切换横幅,但是在我的PHP文件中进行外部引用似乎不起作用。它在HTML页面中运行良好

这是JavaScript文件中的代码

function getStylesheet() {
    var currentTime = new Date().getHours();
    if (7 <= currentTime && currentTime < 19) {
        document.write("<img src='images/banner_day.jpg'>");
    } else {
        document.write("<img src='images/banner_night.jpg'>");
    }
}

getStylesheet();
这是我用来调用JavaScript文件的参考代码。它在一个PHP文件中

<script src="http://beta.website.com/wp-content/themes/theme/scripts/banner.js"></script>
PHP页面上的所有内容都显示在浏览器中,除了我试图用脚本调用的横幅

下面是整个PHP文件代码

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
</head>
<body>
<div id="main">
<div class="container">
<div id="header">
<div id="logo">
<a href="http://bifffffdggdch.com"><img src="http://beta.dfdfdf.com/wp-content/themes/asdafd/images/logo.png" /></a>
</div>
<div id="shadow2"></div>
<div id="shadow1"></div>
<ul id="menu">
<li><a href="">df</a></li>
<li><a href="">df</a></li>
<li><a href="">fd df df</a></li>
<li><a href="">The asfdssd asdfds</a></li>
<li><a href="">sf</a></li>
<li><a href="">df</a></li>
<li><a href="">dfd</a></li>
</ul>
<div id="slogan"><big>"fasfdsads2005."</big></div>
<div id="loginDiv">Login Panel Here</div>
</div>
<div id="banner">
<script src="http://beta.adsfasfasfd.com/wp-content/themes/adfadsf/scripts/banner.js"></script></div>
<div class="sidebar">
Sidebar Content<br />
<br /><br /> 

blah
blah
blah
</div>

<div class="content">
Main Content

<br />
<br />
<br />

<br />
<br />
<br />

</div>

<div id="footer">
<div class="container">
        <div class="footer_column long">
          <h3>Cadsfadsfafdfsd.com All Rights Reserved</h3>
          <p>dsafasdfdffadffadsdafsdfsadafsdfsadfas</p>
        </div>
        <div class="footer_column2">
              <h3>More Links</h3>   
              <ul>
              <li><a href="http://aadfsdfsdfa.
              com">asfsdfa</a></li>
              <li><a href="http://ItsNotch.
              com">ItsNotch</a></li>
              <li><a href="http://adfasfsfaf.
              com">adsfasf</a></li>
              <li><a href="http://twitter.
              com/safs">Twitter</a></li>
              <li><a href="https://www.facebook.com/group.php?gid=10215yy20340498">Facebook Fan Page
              </a></li>
              </ul>
        </div>
        <div class="footer_column2">
              <h3>RSS</h3>
              <ul>
              <li><a href="">RSS Feed</a></li>
              <li><a href="">What is RSS?</a></li>
              </ul>
        </div>

    </div>
  </div>
</div>
</div>
</div>
</div>

</body>
</html>

你确定你脑子里真的有这个想法吗?我当然不能在那里看到它,除非它在中,它可能是路径问题

什么是完整路径? 您的页面完整路径是什么


现在,它会在当前页面下查找图像目录。这是否正确?

尝试将Javascript更改为:

window.onload = function () {

  // Uncomment this line to make sure the script is loading/running, then delete it
  // alert('Hello, your Javascript is running');

  // Declare variables
  var currentTime, bannerDiv, newImg;
  // Get currentTime
  currentTime = new Date().getHours();
  // Get 'banner' div
  bannerDiv = document.getElementById('banner');
  // Get create a new <img>
  newImg = document.createElement('img');
  // Assign a src="" attribute depending on the time
  newImg.src = (currentTime > 7 && currentTime < 19) ? 'images/banner_day.jpg' : 'images/banner_night.jpg';
  // add the new image to the document
  bannerDiv.appendChild(newImg);

};
并把它放在文档的后面,所以

<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
  </head>
  <body>
    <!-- ....... -->
    <div id="banner">
      <script src="http://beta.adsfasfasfd.com/wp-content/themes/adfadsf/scripts/banner.js"></script>
    </div>
    <!-- ....... -->
…致:

<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <script type="text/javascript" src="http://beta.adsfasfasfd.com/wp-content/themes/adfadsf/scripts/banner.js"></script>
  </head>
  <body>
    <!-- ....... -->
    <div id="banner"></div>
    <!-- ....... -->
如果它仍然不起作用,则会发生以下两种情况之一:

您的javascript文件实际上不在http://beta.adsfasfasfd.com/wp-content/themes/adfadsf/scripts/banner.js 因此无法加载/运行脚本。取消注释第一行以确认脚本正在运行。 在images/banner_night.jpg上找不到您的横幅图像-请确保您的相对路径正确。
如果您认为问题出在PHP代码中,您必须向我们展示您的PHP代码。发送到客户端的输出是什么?所有内容都会显示,但横幅输出只是一个横幅图像1请不要使用document.write-这几乎从来都不是正确的解决方案,在这里绝对不是正确的解决方案。2您的脚本标记需要type=text/javascript属性。3除非您在页面上多次调用该函数并查看代码,否则我怀疑您没有必要将该代码包装到函数中。这是可行的,但是我必须更改路径,并使其在.js文件中成为绝对路径。。。不知道为什么会这样?