我正在尝试从SVG元素的“ onmousedown”属性上的外部javascript文件调用函数,该函数在Edge,Chrome和Firefox中正常运行,尽管Internet Explorer报告该函数未定义。
我已经尝试了一些方法,例如将方法包装在$ {document).ready中的jquery中,在调用该函数之前设置5秒钟的超时时间,但是这里似乎没有任何作用。这是Internet Explorer中SVG元素的限制,还是我缺少了什么?我的基本代码如下:
<script src="~/Scripts/myexternalscript.js"></script>
<script>
function MyFunction(evt) {
MyExternalFunction(evt); //Defined in the myexternalscript.js
}
</script>
<div>
<svg onmousedown="MyExternalFunction(event)" id="SvgjsSvg1001" width="100%" height="100%" xmlns="http://www.w3.org/2000/svg" version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:svgjs="http://svgjs.com/svgjs"></svg>
</div>
我的内部功能如下:
function MyInternalFunction(evt){
...
}
但是我已经尝试了其他形式,例如:
MyInternalFunction = function(evt){
...
}
谢谢您的任何建议!
答案 0 :(得分:0)
我终于在IE调试器中找到了问题,似乎外部文件(在另一个函数中)存在语法错误,这就是IE说我的调用函数未定义的原因。因此,这可以被视为已解决,尽管我并不十分了解为什么另一个函数中的语法错误会导致IE中出现这种情况。就在我以为我从永远的Internet Explorer中看到了这一切时...
仍然感谢您的答复!