点击和Mousemove为iPhone?

时间:2013-11-01 22:31:47

标签: javascript jquery html ios iphone

我遇到鼠标悬停和点击事件的问题。它适用于台式机/笔记本电脑的网络浏览器,但不适用于iPhone的Safari。这是代码:

<script type="text/javascript">
function tog(v){return v?'addClass':'removeClass';} 
$(document).on('input', '.clearable', function(){
$(this)[tog(this.value)]('x');
}).on('mousemove', '.x', function( e ){
$(this)[tog(this.offsetWidth-100 < e.clientX-this.getBoundingClientRect().left)]('onX');   
}).on('click', '.onX', function(){
$(this).removeClass('x onX').val('');
});
</script>

X是每个搜索字段中出现的清晰图标,但我无法在iPhone上“点击”它。用touchmove替换'mousemove'不起作用。不幸的是,我无法适应任何jQuery Mobile插件,我是一个noob编码。谢谢!快乐你好'

2 个答案:

答案 0 :(得分:1)

你必须使用touchstarttouchmove作为iphone

答案 1 :(得分:0)

如上所述,iphone浏览器Safari没有鼠标,因此您需要使用touchstart和touchmove事件。

看看这个。请注意firefox mobile和safari以类似的方式处理触摸,MDN文档比w3c docs更有帮助

https://developer.mozilla.org/en-US/docs/Web/Guide/API/DOM/Events/Touch_events

W3c文档:

http://www.w3.org/TR/2013/REC-touch-events-20131010/