标签:style http color os io 使用 java ar strong
以下内容引用自CSDN论坛的foreveryang321用户(原文链接:http://bbs.csdn.net/topics/390571943):
我也遇到这样的问题,最后通过2次点击时间差来解决。(500是2次点击时间差,单位ms)
1、自己写一个fn-->myclick,然后onclick="myclick();"调用。
代码:
JavaScript code?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
var
t1 =
null
;
//这个设置为全局
function
myclick(){
if
(t1 ==
null
){
t1 =
new
Date().getTime();
}
else
{
var
t2 =
new
Date().getTime();
if
(t2 - t1 < 500){
t1 = t2;
return
;
}
else
{
t1 = t2;
}
}
/*自己的代码*/
}
|
2、上面的代码,也可以写在iscroll.js(4.2.5)的_end方法中,要注意var t1是全局的
3、国外论坛在iscroll.js(4.2.5)对应位置添加
JavaScript code?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
topOffset: 0,
checkDOMChanges:
false
,
// Experimental
handleClick:
true
,
preventGhostClick:
false
,
// prevent ghost clicks?防止2次点击
ghostClickTimeout: 500,
// timeout for ghost click prevention设置时间差
/**
* Prevents any real clicks.
* See preventGhostClick portion of _end().
*/
_preventRealClick:
function
(e) {
if
(e._fake !==
true
) {
e.preventDefault();
e.stopPropagation();
e.stopImmediatePropagation();
e.cancel =
true
;
return
false
;
}
},
_end:
function
(e) {......
ev._fake =
true
;
if
(that.options.preventGhostClick) {
//preventGhostClick: true,
// prevent ghost real clicks on body
document.body.addEventListener(
‘click‘
, that._preventRealClick,
true
);
// until ghost click timeout expires
setTimeout(
function
() {
document.body.removeEventListener(
‘click‘
, that._preventRealClick,
true
);
}, that.options.ghostClickTimeout);
}
target.dispatchEvent(ev);
|
我用的是第1中方法,在每个点击的fn中都加入时间判断代码,这样比较繁琐,没办法,项目经理不给修改iscroll.js,建议直接在iscroll中加时间判断。希望对你有帮助
面对使用iscroll的页面,如果页面的dom结构发生变化,一定要调用scroll对象的refresh方法!
标签:style http color os io 使用 java ar strong
原文地址:http://my.oschina.net/evanyan/blog/312077