手机
当前位置:查字典教程网 >编程开发 >Javascript教程 >使用button标签,实现三态图片按钮
使用button标签,实现三态图片按钮
摘要:三态图片按钮对于好的用户体验来说必不可少。我对dom事件进行一些处理,在不改变html的情况下,实现了三态按钮。下面的解决方法的关键,主要是...

三态图片按钮对于好的用户体验来说必不可少。我对dom事件进行一些处理,在不改变html的情况下,实现了三态按钮。下面的解决方法的关键,主要是去掉虚线选框和对背景进行定位,没有使用循环处理,任何一个按钮,只要定义了背景图片和边框为0,就自动变成了三态按钮。

[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

上面的解决方法还有点美中不足,就是在firefox下,没办法用Tab键定位按钮,这是因为为了去掉虚框,屏蔽了点击事件。下面的程序解决了这个问题,方法是在按钮里创建一个不可见的新按钮,由它转移焦点。

button{border:0} if(document.all) document.execCommand("BackgroundImageCache",false,true) document.body.onload=function(){ if(document.activeElement.tagName=="BUTTON") document.activeElement.blur() } document.onmouseover=document.onmouseout=document.onmousedown=document.onmouseup=function(e){ var o,ee=e==null?event.srcElement:e.target e=e||event if(ee.tagName=="BUTTON"&&ee.clientWidth==ee.offsetWidth){ if(e.type=="mousedown"){ if((ee.lastChild||"").tagName!="BUTTON"){ o=document.createElement("button") o.style.cssText="position:absolute;left:-9000" ee.appendChild(o) ee.onfocus=function(){ee.lastChild.focus()} } ee.style.backgroundPosition="0 -"+(2*ee.offsetHeight) } if(e.type=="mouseover"||e.type=="mouseup") ee.style.backgroundPosition="0 -"+ee.offsetHeight if(e.type=="mouseout") ee.style.backgroundPosition="0 0" } }

[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

【使用button标签,实现三态图片按钮】相关文章:

利用js实现禁止复制文本信息

jquery插件validation实现验证身份证号等

js去字符串前后空格的实现方法

tagName的使用,留一笔

kindeditor编辑器点中图片滚动条往上顶的bug

Nodejs实现批量下载妹纸图

JavaScript实现Flash炫光波动特效

Jquery实现动态切换图片的方法

JQuery+CSS实现图片上放置按钮的方法

JavaScript获取并更改input标签name属性的方法

精品推荐
分类导航