我在使用jqPlot时遇到了一些问题,无法对其元素执行操作点击,希望有人能够解决这个问题。
我的图表是一个由jqPlot渲染的柱状图,使用以下代码将单击事件处理程序附加到它的父级(jqPlot图表)上:
$.jqplot.eventListenerHooks.push(['jqplotClick', myClickHandler]);
我的myClickHandler代码如下:
function myClickHandler(ev, gridpos, datapos, neighbor, plot) {
alert('you have triggered click action');
}
使用这个简单的jqPlot实现,我的意图是在图表内部的区域上触发点击时会触发警报操作,包括柱状图项目。在任何桌面浏览器(IE6/7/8/9、Chrome、Safari)中都可以正常工作。
然而,我遇到的问题是,在使用iPhone/iPad访问网站时,除了上述指定的点击行为外,一切都渲染得很完美,但点击行为表现得很奇怪。
如果我尝试点击任何一个条形图项目,它不会警报“您已触发点击操作”,好像什么也没发生。
然而,当我尝试点击(触摸)图表的空白处时,警报消息就正常触发了。
有任何想法吗?
touchstart
或touchend
然后看看是否有效吗? 如果有效,那么你的某个元素正在占用触摸事件,导致它无法冒泡。 - Gaurav Shah