我使用以下内容进行DOM元素的双击/单击。
$(selector).doubletap(
/** doubletap-dblclick callback */
function(event){
var $this = $(event.currentTarget);
},
/** touch-click callback (touch) */
function(event){
doSingleClick(this)
},
/** doubletap-dblclick delay (default is 500 ms) */
400
);
我从上面调用的另一个函数:
function doSingleClick(but) {
var $but = $(but);
if($but.closest("#domElementId").length < 1)
return;
//"I have more code here to handle the if statement"
}
doSingleClick函数永远不会超过返回b / c的值$但永远不会被正确定义。我的假设是我没有正确传递参数。我的问题在哪里?
答案 0 :(得分:1)
看起来你从这里提取了这段代码:
http://appcropolis.com/implementing-doubletap-on-iphones-and-ipads/
查看代码,在浏览器的事件回调中调用您提供给.doubletap()的函数,而没有jQuery选择器的好处。 'this'在:
function(event){
doSingleClick(this)
},
可能是Window上下文,而不是您期望的元素。修复它的最简单方法是使用当前元素作为输入:
function(event){
doSingleClick(event.currentTarget)
},
这是doubletap / click函数已经在使用$ this = $(event.currentTarget)
希望有所帮助。