我想在 Impresspages 4.2.3 上的页面加载时实现 javascript 背景图像更改器,如 http://www.9lessons.info/2011/03/background-image-change-on-refresh-with.html 中所述。 。它可以在我的本地主机上运行,但在移动到我的托管服务器上时无法运行。
我将此代码放在标签之间的“_header.php”上:
<script type="text/javascript">
var totalCount = 4;
function ChangeIt()
{
var num = Math.ceil( Math.random() * totalCount );
document.body.background = 'http://localhost/halmaheradivecruise.com/theme/air/assets/img/'+num+'.jpg';
document.body.style.backgroundRepeat = "repeat";// Background repeat
}
</script>
标签中的代码如下:
<script type="text/javascript">
ChangeIt();
</script>
最佳答案
在破解代码之前,请检查您尝试加载的图像是否确实存在。
使用您的代码,您会得到如下内容:
http://www.halmaheradivecruise.com/theme/air/assets/img/2.jpg
如果您点击此链接,您将收到“404 not found”错误。所以问题出在链接而不是脚本上。
真正的问题在于基于 Unix 的系统区分大小写。 ImpressPages 没有文件夹“主题”。所有主题都放在“主题”中。大多数时候主题也以大写字母命名。因此,您的图像在这里:
http://www.halmaheradivecruise.com/Theme/BantikAir/assets/img/3.jpg
在本地主机上它可以工作,因为Windows看不到小写和大写字母之间的任何区别。而 Unix 系统将它们视为不同的路径。
关于Impresspages 上页面加载时 JavaScript 背景图像更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26228738/