Impresspages 上页面加载时 JavaScript 背景图像更改

标签 javascript impresspages

我想在 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/

相关文章:

javascript - 在插件内的回调函数中使用 ajax 输出 (jQuery)

javascript - 允许一个元素继承另一个元素的所有事件

javascript - 为什么 Polymer 不读取行为属性?

javascript - 仅在页面中包含来自已用插件的脚本

Javascript 的右手值在循环中改变自身?

javascript - 如何防止 Ajax 缓存

multilingual - 使用标志而不是链接进行语言切换?

css - 在附加文件中覆盖 CSS?

csrf - 我需要知道如何在 Impresspages cms 中禁用 CSRF 功能