图片分左右不同点击效果不同的处理方法
2012-05-17 14:53
253 查看
情况是这样的,图片一分为二,鼠标在图片的左边滑动时显示向左的箭头,右边就显示右边的箭头,一分为二的条件在ie下是event.offsetX<width/2,用你写的方法,测试了下,在ff,当鼠标进入图片范围不出来的话就不会改变箭头方向,希望能有办法帮我找到问题,谢谢!
<script> function upNext(event){ var img = document.getElementById("imgId"); var lefturl = document.location; var righturl = document.location; var imgurl = righturl; var width = (img.width==undefined) ? img.getAttribute("width") : img.width; var x = (event.offsetX==undefined) ? getOffset(event).offsetX : event.offsetX; function move(){ img.style.cursor = ''; if(event.offsetX<width/2){ if(lefturl != ''){ if(window.attachEvent){ img.style.cursor = 'url(images/left.cur),auto'; }else{ img.setAttribute("style","cursor:url(images/left.cur),auto;"); } } }else{ if(righturl != ''){ if(window.attachEvent){ img.style.cursor = 'url(images/right.cur),auto'; }else{ img.setAttribute("style","cursor:url(images/right.cur),auto;"); } } } } function up(){ if(event.offsetX<width/2){ if(lefturl != ''){ top.location = lefturl; } }else{ if(righturl != ''){ top.location = righturl; } } } if(window.attachEvent){ img.attachEvent("onmousemove",move); img.attachEvent("onmouseup",up); }else{ img.addEventListener("mousemove",move,false); img.addEventListener("mouseup",up,false); } } function getOffset(e){ var target = e.target; if(target.offsetLeft == undefined){ target = target.parentNode; } var pageCoord = getPageCoord(target); var eventCoord ={ x: window.pageXOffset + e.clientX, y: window.pageYOffset + e.clientY }; var offset ={ offsetX: eventCoord.x - pageCoord.x, offsetY: eventCoord.y - pageCoord.y }; return offset; } function getPageCoord(element) { var coord = {x: 0, y: 0}; while (element){ coord.x += element.offsetLeft; coord.y += element.offsetTop; element = element.offsetParent; } return coord; } if(window.attachEvent){ document.getElementById("imgId").attachEvent("onmouseover",upNext); }else{ document.getElementById("imgId").addEventListener("mouseover",upNext,false); } </script>
相关文章推荐
- 选项卡js 改变图片的路径来实现点击和未点击的不同效果
- js实现点击左右按钮轮播图片效果实例
- android 入门 004 (同一个方法,点击实现不同的效果)
- iOS UIButton文字和图片上下左右偏移封装,一个方法即可实现button上文字和图片不同位置的放置
- jQuery实现点击图片翻页展示效果的方法
- jquery插件jquery.LightBox.js实现点击放大图片并左右点击切换效果(附demo源码下载)
- listview中有按钮、图片等需要不同点击处理的控件如何处理
- 左右方向滚动的图片代码和<marquee>效果有点不同
- 点击轮播图片左右button,实现轮播效果
- Bitmap.compress方法,在不同机器,不同系统上,保存出来的图片的效果和大小都会不一样
- 【练习5.1】使用cvSmooth实现不同平滑处理方法的效果以及不同的平滑窗口对处理效果的影响
- jQuery实现点击图片翻页展示效果的方法
- 点击不同的按钮把同一个表单提交到不同的页面处理的方法
- 基于jquery实现左右按钮点击的图片切换效果
- Android编程实现GridView控件点击图片变暗效果的方法
- js实现点击左右按钮轮播图片效果实例
- 自定义不同颜色点赞图片被点击之后动画缩放效果
- android 里面对图片的不同压缩处理 以及简单拍照功能实现加设置闪光灯效果
- 鼠标点击按钮图片切换+自动切换+左右按钮点击切换效果
- 基于jquery实现左右按钮点击的图片切换效果