Javascript 使用MSPointerEvent for IE 11创建可单击画布
我一直在尝试在IE11上制作可点击画布。 所以,若你们点击这个画布,它会在下一个窗口中打开URL。 这个问题是在阅读了IE11的文档之后产生的。“MouseeEvent”已更改为“MSPointerType”。我确实试过写Javascript 使用MSPointerEvent for IE 11创建可单击画布,javascript,canvas,internet-explorer-11,Javascript,Canvas,Internet Explorer 11,我一直在尝试在IE11上制作可点击画布。 所以,若你们点击这个画布,它会在下一个窗口中打开URL。 这个问题是在阅读了IE11的文档之后产生的。“MouseeEvent”已更改为“MSPointerType”。我确实试过写.InitPointerEvent,但它仍然不起作用。这是我的无效代码 </head> <body> <script type="text/javascript"> var canvas = document.crea
.InitPointerEvent
,但它仍然不起作用。这是我的无效代码
</head>
<body>
<script type="text/javascript">
var canvas = document.createElement('canvas');
canvas.id = "dgMobix-PopLayer";
var body = document.getElementsByTagName("body")[0];
canvas.width = body.clientWidth;
canvas.height = body.clientHeight;
canvas.addEventListener('click', function(event) {
var t = document.createElement("a");
t.href = "http://www.google.com";
t.target="_blank";
var n = document.createEvent("MSPointerEvent");
n.initPointerEvent("click", true, true, window, 0,`` 0, 0, 0, 0, true, false, false, true, 0, null,0,0,0,0,0,0,0,0,1,2,0,true);
t.dispatchEvent(n,true) ;
this.parentNode.removeChild(this);
},false);
body.appendChild(canvas);
</script><canvas id="dgMobix-PopLayer" width="1366" height="646"></canvas>
</body></html>
var canvas=document.createElement('canvas');
canvas.id=“dgMobix PopLayer”;
var body=document.getElementsByTagName(“body”)[0];
canvas.width=body.clientWidth;
canvas.height=body.clientHeight;
canvas.addEventListener('click',函数(事件){
var t=document.createElement(“a”);
t、 href=”http://www.google.com";
t、 target=“_blank”;
var n=document.createEvent(“MSPointerEvent”);
n、 initPointerEvent(“单击”,true,true,window,0,``0,0,0,0,0,true,false,false,true,0,null,0,0,0,0,0,0,0,1,2,0,true);
t、 dispatchEvent(n,true);
this.parentNode.removeChild(this);
},假);
body.appendChild(画布);
在任何人提到.addEventListener问题之前,根据IE11文档,他们已经删除了.attachEvent(这仅适用于IE10或以下版本),现在他们已经采用了W3C方法。欢迎使用!请修改您的邮件,您的问题很难理解。不便之处,敬请原谅。我确实尽了最大的努力来解决这个问题!希望你现在能给出一些方向!PointerEvent在IE11中不再需要MS前缀