鼠标事件改变css样式、选择器

html-css026

鼠标事件改变css样式、选择器,第1张

我们在很多时候其实是需要在网页中设置鼠标效果的,有些是自动生成的,比如一个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 之后(如果存在的话),这样样式才能生效。

可以,使用伪类,比如

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html charset=gb2312" />

<style>

#myInput{ background-color:#FF0000}

#myInput:focus{ background-color:#FFFF00}

#myBtn{ background-color:#0000FF color:#FFFFFF}

#myBtn:hover{ background-color:#FFFFFF color:#0000FF}

</style> 

<title>无标题文档</title>

</head>

<body>

<input id='myInput' type='text' />

<button id='myBtn'>ok</button>

</body>

</html>

希望帮到你

CSS 鼠标点击穿透Div

有些时候网页中用到了一些绝对定位的Div,因为需要事先这个Div是隐藏的,但是它所在的位置会遮挡住鼠标点击事件。这个时候可以用CCS3中的pointer-events属性来解决。

//穿透该层

pointer-events:none

//恢复点击处理

pointer-events:auto

根据情况来动态修改Div的pointer-events属性即可。

例如用JQuery可以这样写:

//穿透该层

$('#dvTest').css('pointer-events', 'none')

或者

恢复点击处理

$('#dvTest').css('pointer-events', 'auto')