【发布时间】:2014-05-29 00:04:19
【问题描述】:
我想要一个背景图像随着 html 链接标签上的 onclick 属性而改变。但它不工作。
<ul>
<li><a href="index.php?page=Home" onclick="one();">Home</a> </li>
<li><a href="index.php?page=Achivement" onclick="two();">Achivement</a></li>
<li><a href="index.php?page=Career" onclick="three();">Career</a></li>
<li><a href="index.php?page=Message" onclick="four();">Message</a></li>
<li><a href="index.php?page=opportunity">opportunity</a></li>
<li><a href="upload1.php">Register</a>
<li></li>
</ul>
<script type="text/javascript">
function one(){
$('body').css('background-image','url(image/back1.jpg)');
}
function two(){
$('body').css('background-image','url(image/back2.jpg)');
}
function three(){
}
function four(){
} </script>
如您所见,我尝试在 onclick 属性上传递一个函数,并且我已经在底部定义了这些函数,但背景图像仍然不会改变。我检查了图像所在的目录它们是正确的。而且我还没有在我的css上定义任何背景图像。我需要帮助,这让我发疯了。
【问题讨论】:
-
你是否包含了 jQuery 库??
-
任何 console.log 错误?
-
页面将被重定向,因为它是一个超链接。
-
所以我认为背景正在改变,但在改变之后,链接实际上重定向到 index.php 并且页面被重新绘制。
event.preventDefault()可能符合您的搜索兴趣。 -
在保存背景图像索引的 url 路径中传递一个标识符。例如 index.php?page=home&background=1。然后在你的 js 中创建一个函数来获取这个参数并显示正确的图像。
标签: javascript jquery html css background-image