/* 字体链接样式 */
td.firstLevelMenuClass a:link {color: #3E8BAC text-decoration: none} /* 未访问的链接 */
td.firstLevelMenuClass a:visited {color: #FFFFFF text-decoration: none} /* 已访问的链接 */
td.firstLevelMenuClass a:hover {color: #FFFFFF} /* 鼠标移动到链接上 */
td.firstLevelMenuClass a:active {color: #FFFFFF} /* 选定的链接 */
/* 鼠标事件背景样式 */
td.firstLevelMenuClass:hover {background-image: url(../../Public/img/menu_first_down_bg.gif) } /* 鼠标移动到链接上 */
td.<span style="color:#cc0000">firstLevelMenuClassHover</span>{background-image: url(../../Public/img/menu_first_down_bg.gif) }
td.firstLevelMenuClass{background-image: url(../../Public/img/head_menu_center.gif) }
JS:
[javascript] view plain copy
/*
* 取得对应类和标签的HTML元素
* clsName:给定类名
* tagName:给定的HTML元素,如果为任意 tagName='*'
*
*/
function getElementsByClassName(clsName, tagName) {
var ClassElements = []
selElements = document.getElementsByTagName(tagName)
for (var i = 0 i < selElements.length i++) {
if (selElements[i].className == clsName) {
ClassElements[ClassElements.length] = selElements[i]
}
}
return ClassElements
}
//通过改变元素class名达到间接改变背景样式
function onFirstMenuChangeBg(e) {
//先清除已经改变的元素背景样式
var getElements = getElementsByClassName('<span style="color:#cc0000">firstLevelMenuClassHover</span>', 'td')
for (var i = 0 i < getElements.length i++) {
getElements[i].className = "firstLevelMenuClass"
}
//设置鼠标点击元素背景样式
e.className = "firstLevelMenuClassHover"
}
HTML:
[html] view plain copy
<td class="firstLevelMenuClass" id="firstLevelMenu0" onclick="onFirstMenuChangeBg(this)" >
<a href='#'>测试0</a>
</td>
<td class="firstLevelMenuClass" id="firstLevelMenu1" onclick="onFirstMenuChangeBg(this)" >
<a href='#'>测试1</a>
</td>
<td class="firstLevelMenuClass" id="firstLevelMenu2" onclick="onFirstMenuChangeBg(this)" >
<a href='#'>测试2</a>
</td>
我们在很多时候其实是需要在网页中设置鼠标效果的,有些是自动生成的,比如一个link链接,那么鼠标移上去自动会变成一个手的样子去点击,有时候一个input输入框,那么鼠标就自动变成一个英文大写I的样子,那么我们是否可以将更多对象设置成我们需要的样子呢?这完全是可以的,接下来就看下效果吧
onClick:鼠标单击事件。(是指鼠标按下,然后松开时产生。)
onDblClick:鼠标双击事件。(是指鼠标快速按下,松开,并再次按下时产生。)
onMouseDown:鼠标按下事件。(鼠标按下时即产生。)
onMouseUp:鼠标释放事件。(是指鼠标从按下的状态到弹起。)
onMouseMove:鼠标移动事件。(是指在特定元素上移动鼠标。)
onMouseOver:鼠标经过事件。(是指,当指针从外界往元素上移动时产生。)
onMouseOut:鼠标离开事件。(是指鼠标从特定元素上离开时产生。)
onLoad:载入事件。(当图象或页面结束载入时产生。)
onUnload:卸载事件。(当访问者离开页面时产生。)
onScroll:滚动条滚动事件。(当访问者使用卷轴上移或下移时产生。)
将这个自定义样式应用到图片上,在浏览器中预览到图片变成了黑白,我们再定义一个样式“.over”,这个样式没有任何内容,是空样式,样式表代码如下:
.over {}
.out {filter: Gray}
然后在图片标记(IMG)里加上“onMouseOver="this.className='over'" onMouseOut="this.className='out'"”,意思为当鼠标经过时,图片为over样式,即彩色正常图象;当鼠标离开时,图片为out样式,即黑白图像。oMouseOver和onMouseOut是鼠标事件,this.className=”…”表示当前对象的class名 为…,注意大小写不要写错,JS对大小写非常敏感。
这样这个效果就完成了,保存后在浏览器里打开,图象是黑白的,当鼠标移上去时,图象变成彩色,鼠标离开时,图象又变回黑白。只要发挥你的想象,通过this.className方法还可以做出很多好看的鼠标效果。
十字
文本光标
等待
默认
问号
左右箭头
上下箭头
系统自动给出效果
系统自动给出效果
:hover 选择器用于选择鼠标指针浮动在上面的元素。
提示: :hover 选择器可用于所有元素,不只是链接。
提示: :link 选择器设置指向未被访问页面的链接的样式,:visited 选择器用于设置指向已被访问的页面的链接,:active 选择器用于活动链接。
注释: 在 CSS 定义中,:hover 必须位于 :link 和 :visited 之后(如果存在的话),这样样式才能生效。
css的cursor属性是设置鼠标样式的。以下是鼠标样式的几种表现方式以及解释:
default 默认光标(通常是一个箭头)
auto
默认。浏览器设置的光标
crosshair
光标呈现为十字线。
pointer
光标呈现为指示链接的指针(一只手)
move
此光标指示某对象可被移动。
e-resize
此光标指示矩形框的边缘可被向右(东)移动。
ne-resize
此光标指示矩形框的边缘可被向上及向右移动(北/东)。
nw-resize
此光标指示矩形框的边缘可被向上及向左移动(北/西)。
n-resize
此光标指示矩形框的边缘可被向上(北)移动。
se-resize
此光标指示矩形框的边缘可被向下及向右移动(南/东)。
sw-resize
此光标指示矩形框的边缘可被向下及向左移动(南/西)。
s-resize
此光标指示矩形框的边缘可被向下移动(南)。
w-resize
此光标指示矩形框的边缘可被向左移动(西)。
text
此光标指示文本。
wait
此光标指示程序正忙(通常是一只表或沙漏)。
help
此光标指示可用的帮助(通常是一个问号或一个气球)。
还有一种就是 url ,需要你自定义一个鼠标样式