Неопределенная функция во внешнем JS только в Internet Explorer, но Chrome и Edge работают просто отлично - PullRequest
0 голосов
/ 25 сентября 2018

Я пытаюсь вызвать функцию из внешнего файла javascript для атрибута «onmousedown» элемента SVG, который прекрасно работает в Edge, Chrome и Firefox, хотя Internet Explorer сообщает, что функция не определена.

Я уже пробовал несколько вещей, таких как обертывание метода внутри jquery в $ (document) .ready, установка 5-секундного тайм-аута перед вызовом функции, но здесь, похоже, ничего не работает.Это ограничение элементов SVG в Internet Explorer, или я что-то упустил?Мой основной код выглядит так:

<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){
...
}

СпасибоВам за любой совет!

1 Ответ

0 голосов
/ 27 сентября 2018

Я наконец-то обнаружил проблему в отладчике IE, и, похоже, во внешнем файле (в другой функции) произошла синтаксическая ошибка, и поэтому IE сказал, что моя вызываемая функция не определена.Так что это можно считать решенным, хотя я не очень понимаю, почему синтаксическая ошибка в другой функции вызывает подобные вещи в IE.Как раз тогда, когда я думал, что видел все это из «Великого Internet Explorer» ...

Спасибо за ответы в любом случае!

...