Javascript根据用户所在的区域改变背景图像
Javascript for changing background image depending on area user is in
我的导航栏有5个按钮[Home, About, Services, Events, Contact],每个按钮的背景图片为"blue-button.png"。我想把它改成"white-button。png"当用户在那个区域时。我希望它像a:active一样简单,但是它不是,我将解释为什么;
所有的内容显示在一个覆盖。网站建立的方式,你永远不会离开索引页,但内容被加载到索引页。这就是a:active不起作用的原因。
现在,例如,当用户打开"About"页面时,内容(我将其称为"About Main")出现,并有"About- me","About- you"answers"FAQ"的链接。我希望"关于"按钮改变背景图像(白色),每当用户在任何属于"关于"的区域(关于主,关于我,关于你,常见问题)…我还希望按钮改变回蓝色,当用户去到不同的部分(EX:联系),然后有联系人按钮变成白色。
我注意到告诉用户在哪里的唯一方法是,他们所覆盖的css样式为display:block
,而所有其他的都隐藏在display:hidden
…
if
(About Main, About Me, About You, FAQ)是display:block
{ $(".about").css('background-image', 'url(../img/white-button.png)' }
else
{ $(".about").css('background-image', 'url(../img/blue-button.png)' }
if
(触点)为display:block
{ $(".contact").css('background-image', 'url(../img/white-button.png)' }
else
{ $(".contact").css('background-image', 'url(../img/blue-button.png)' }
导航按钮有这样的类:
<a class="about">
<a class="contact">
而叠加的id为:
<div class="simple_overlay" id="about">
<div class="simple_overlay" id="contact">
我知道这是很多信息,但希望有人能帮助我澄清细节,我不太擅长javascript…
这里有一个网站的链接,如果你想更好地理解
提前感谢你的时间,这个真的要杀了我!
当你点击每个链接时,你最好只是添加和删除一个.selected
类。然后将.selected
类设置为white-button.png
的背景图像。您需要在导航链接中添加单击处理程序,以便它首先从所有这些链接中删除任何现有的.selected
类,然后将.selected
添加到您单击的链接中。
.navigation a.selected
{
background-image: url(../img/white-button.png);
}
Javascript -我看到你正在使用jQuery,所以这很容易。将下面的代码添加到初始化部分。我还没有测试过这个脚本,但它应该非常接近。
// Add click event handler to all navigation links
$('.navigation a').click(function() {
// First remove selected class from all navigation links
$('.navigation a').removeClass('selected');
// Now add the selected class to the current link
$(this).addClass('selected');
});
EDIT:我稍微调整了一下,并添加了一个jsfiddle让你看到它的作用:http://jsfiddle.net/VCaSV/
- 用于根据用户改变文本区域的字体颜色的JavaScript'的选择
- 当我用鼠标点击身体区域时,那个li标签是如何改变颜色的
- JQuery . .改变焦点悬停状态&限制键盘导航选项卡区域
- 基于查看区域,使用javascript动态改变html对象中嵌入flash文件的大小
- 只改变标签'文本区域的颜色
- 当改变一个文本区域的值改变其他值
- JavaScript代码通过点击不同的图像来改变文本区域的值
- 我如何改变CKEditor,使它不会';< >在文本区域内
- 如何改变宽度和高度的文本区域,根据其内容的大小
- 如何改变一个javascript结果从选择框到文本区域
- 如何用java脚本改变页面中特定区域的颜色
- 改变文本区域onclick的值将插入符号置于一个奇怪的位置,但仅在IE中
- Javascript根据用户所在的区域改变背景图像
- 如何在没有第三方JS库的情况下改变文本区域滚动条的颜色
- 改变/追加文本区域的值
- 高图:改变绘图区域的光标
- 如何在JQuery的文本框改变时禁用下一个文本区域
- 如何动态地改变行计数在文本区域,就像在facebook对话框
- 如何防止文本区域滚动到顶部时,它的值改变
- 如何改变一个图像时,多个区域可以点击