Mousedown相当于手机

时间:2013-01-17 09:36:23

标签: android iphone html5-audio

我试图在触摸时播放音频声音,但无法让它始终如一地工作,它在机器人和海豚上工作,但它在ipad上根本不起作用。我在touchstart上试过mousedown,onclick,touchstart。他们都没有工作

<canvas id="scratcher1" class="scratchMe" width="99px" height="89px" onmousedown="alert(down)" onclick="alert(click)" touchstart="alert(touch)" ontouchstart="alert(ontouch)"></canvas>
<canvas id="scratcher2" class="scratchMe" width="99px" height="89px" onmousedown="scratch.play()"></canvas>

这就是它现在的情况,切换到警报,所以我可以尝试找出哪些有效,正如我所说的那样。

3 个答案:

答案 0 :(得分:0)

您可以使用javascript初始化代码以编程方式将事件添加到画布:

document.getElementById("scratcher1").addEventListener("mousedown", alert, false);

它应该有效。 更多关于“响应鼠标和触摸画布上的事件”下的here

答案 1 :(得分:0)

所有触摸操作都提供以下触摸操作序列:

ontouchstart ontouchmove ontouchend 的onclick

只能ontouchmove,可以为触摸操作生成所有休息。

请检查这些。希望它有所帮助

答案 2 :(得分:0)

管理通过此论坛找到答案。

http://www.dynamicdrive.com/forums/showthread.php?65787-How-to-combine-eventhandlers-for-mouse-and-touchscreen-(e-g-iPad

与iPad类似的情况。

<script type="text/javascript">

(函数(){     VAR     first = document.getElementById('scratcher1'),     second = document.getElementById('scratcher2');     third = document.getElementById('scratcher3');     第四个= document.getElementById('scratcher4');     第五名= document.getElementById('scratcher5');     six = document.getElementById('scratcher6');     seven = document.getElementById('scratcher7');     第八名= document.getElementById('scratcher8');

first.ontouchstart = second.ontouchstart = third.ontouchstart = fourth.ontouchstart = fifth.ontouchstart = sixth.ontouchstart = seventh.ontouchstart = eighth.ontouchstart = function () {
    scratch.play()
};

})();

终于有了它的作用。