如何将onmouseover事件更改为onclick而不是javascript?

时间:2010-05-14 06:27:40

标签: javascript jquery javascript-events

我在wordpress中使用这个插件

http://www.iwebix.de/front-slider-wordpress-plugin-demo/

正如您在上面的演示中所看到的,左右箭头按钮是滚动缩略图的控件,事件是onmouseover和onmouseout。

我不知道如何将其更改为onclick,以便缩略图仅在单击按钮时左右滚动。

有关如何执行此操作的任何帮助或想法?

谢谢!

这是脚本。

http://www.iwebix.de/wp-content/plugins/front-slider/scripts/slider.js

2 个答案:

答案 0 :(得分:1)

我没有时间仔细研究它(或测试它),但乍一看你应该能够改变onmouseover&对onmouseoutonmousedown个事件发送onmouseup个事件,看起来它们仍然有效。换句话说,改变这一点(第28-30行):

u.onmouseover=new Function('SLIDE.scroll.init("'+this.thumbs+'",-1,'+this.scrollSpeed+')');
u.onmouseout=r.onmouseout=new Function('SLIDE.scroll.cl("'+this.thumbs+'")');
r.onmouseover=new Function('SLIDE.scroll.init("'+this.thumbs+'",1,'+this.scrollSpeed+')');

到此:

u.onmousedown=new Function('SLIDE.scroll.init("'+this.thumbs+'",-1,'+this.scrollSpeed+')');
u.onmouseup=r.onmouseup=new Function('SLIDE.scroll.cl("'+this.thumbs+'")');
r.onmousedown=new Function('SLIDE.scroll.init("'+this.thumbs+'",1,'+this.scrollSpeed+')');

希望这会有所帮助。如果没有,请提前抱歉......

答案 1 :(得分:0)

有点hacky,但绝对最简单的方法是将onmouseover事件处理程序直接绑定到onclick和clear onmouseover,以便只有onclick触发处理程序。像这样:

var divLeftArrow = document.getElementById("arrowleft");
divLeftArrow.onclick = divLeftArrow.onmouseover;
divLeftArrow.onmouseover = undefined;