不一定是我自己的网站,但是如果您浏览到NBA.com并查看具有左/右滑块的分数/时间表区域,是否有一个原因点击通常注册为点击不会导致滑块移动?这是一个flash bug吗?只是想出于好奇而知道。
我使用的是Google Chrome,OSX Lion,MacbookPro 13“。
答案 0 :(得分:2)
我已经检查了使用点按即可调用哪些鼠标事件,其行为与“常规”点击相同 - 这是人们所期望的。这意味着Flash中没有错误,也没有从Mac OS X传递事件的方式。
所以我已经反编译了SWF并找到了原因:
按钮(ActionScript2)具有onPress()
个处理程序,每个处理程序使用scrollUnitContainer()
以50毫秒的间隔调用滑块函数(setInterval()
)。然后onRelease()
处理程序再次清除间隔。无论您使用点击式鼠标还是鼠标按钮,都会正确调用这两个处理程序。
setInterval()
在第一次完成间隔之前不会调用指定的函数。由于使用点击点击时MOUSE_DOWN和CLICK事件之间的时间小于50毫秒,因此永远不会执行scrollUnitContainer()
;当您使用触控板(或鼠标按钮)的实际点击时,MOUSE_DOWN和CLICK之间的时间足够长,可以调用一次该函数。
要解决这个问题,作者应该在设置间隔之前添加scrollUnitContainer();
- 然后在所有情况下一切都会正常工作。