相关疑难解决方法(0)

可以*你*在移动浏览器上获得SVG接受鼠标/触摸事件吗?我不能

我显示一个带有嵌入式SVG的HTML.我想要它来检测鼠标事件,但它不适用于移动设备(Android Jellybean).它适用于桌面浏览器.

这是一个演示页面:http: //artsyenta.org/misc/ss/j.touchtry1.html.

如果将鼠标拖到圆圈上,则会在名为"j_xxx"的元素中看到鼠标条目的日志.这适用于Firefox和Chrome.

打开你的Android平板电脑(我也在某人的iPhone上试过这个,结果相同).将手指拖过圆圈即可立即获得一个touchenter事件.没有其他表现.

您可以通过查看页面源来查看整个页面和代码.它不长,最长的部分是SVG定义.重要的部分是:

$(document).ready(function() {
  makeSomethingHappen("hello");
});
function makeSomethingHappen(svg) {
  placeATop(true);
  $('[class^=j_]')
    .on("mouseover", function(event) { logAction(event, this); })
    .on("mouseout", function(event) { logAction(event, this); })
    .on("touchstart", function(event) { logAction(event, this); })
    .on("touchend", function(event) { logAction(event, this); })
    .on("touchenter", function(event) { logAction(event, this); })
    .on("touchleave", function(event) { logAction(event, this); })
    .on("touchEnter", function(event) { logAction(event, this); })
    .on("touchLeave", function(event) { logAction(event, this); });
}

var cntAct = 0;
function logAction(ev, ele) {
  cntAct++;
  var logSpan = …
Run Code Online (Sandbox Code Playgroud)

mobile html5 svg

13
推荐指数
1
解决办法
1万
查看次数

标签 统计

html5 ×1

mobile ×1

svg ×1